ヘッダー
C# サンプル集
 

SQL API でアイテムを追加する

2021/7/4

→ Visual Basic のサンプルに切り替える

この記事は Azure Cosmos DB SQL API を対象にしています。

クイックスタート - Azure Cosmos DB SQL API リソースを管理する .NET コンソール アプリを構築する | Microsoft Docs

  • この記事の内容は Microsoft.Azure.Cosmos パッケージ バージョン 3.19.0 で確認しています。
  • この記事の内容は 容量モード サーバーレス で確認しています。(記事執筆時点ではプレビュー機能です。)

 

 

アイテムを追加する

前提

  • Azure Cosmos DB のコア(SQL)のアカウントに、MySampleDBデータベースとMySampleContainerコンテナがある。
  • NuGet で Microsoft.Azure.Cosmos パッケージをインストールしている。→ NuGetの使用方法
  • using Microsoft.Azure.Cosmos; がソースコードの冒頭付近に記載されている。

メモ:接続文字列の確認方法

//▼Cosmos DBに接続
//接続文字列は環境に応じて指定してください。
string connectionString = "AccountEndpoint=https://mycosmosaccount.azure.com:443/;AccountKey=U2V0IHlvdXIgYWNjb3VudCBrZXkgZnJvbSBhenVyZSBwb3J0YWw=;";
CosmosClient cosmosClient = new CosmosClient(connectionString);

//▼コンテナへの参照を取得
Database database = cosmosClient.GetDatabase("MySampleDB");
Container container = database.GetContainer("MySampleContainer");

//▼アイテムの追加
Person ieyasu = new Person() { id = "1", Name = "徳川家康", Age = 21 };
//非同期実行もできますが、この例ではGetAwaiterを使って作成が完了するまで待機します。
var result = container.CreateItemAsync(ieyasu, new PartitionKey(ieyasu.Name)).GetAwaiter().GetResult();

//▼結果
//この操作で消費された要求ユニット(RU)の使用量を出力します。
System.Diagnostics.Debug.WriteLine("要求ユニット使用量: " + result.RequestCharge); // 6.29

Debug.WriteLineが表示される場所

メモ:CreateItemAsyncメソッドの第2引数にはコンテナの設定と合致するパーティションキーの値を設定してください。

この例で使用している Person クラス は次の通りです。

Person クラス

public class Person
{
    //id は必須プロパティです。
    public string id { get; set; }
    public string Name { get; set; }
    public int Age { get; set; }
}