ドキュメントの更新

完了

また、サドル変数のプロパティを変更することもできます。

この例では、変数の価格を元の $27.12 から $35.00 に変更します。

saddle.price = 35.00d;

この変更を保持するために、更新項目のみを渡す非同期 ReplaceItemAsync<> メソッドを呼び出すことができます。

await container.ReplaceItemAsync<Product>(saddle);

引き続き新しい変更を加えることもできます。 この例では、タグの配列を新しいタグの配列に置き換え、saddle のより正確な説明を加えます。

saddle.tags = new string[] { "brown", "new", "crisp" };

ドキュメントは既に更新されていますが、アイテムを再度更新する前に新しいアイテムを読み取る必要はありません。

await container.ReplaceItemAsync<Product>(saddle);
saddle["price"] = 35.00

この変更を保持するには、 replace_item メソッドを使用して、更新された項目を渡します。

response = container.replace_item(item=saddle, body=saddle)

アイテムの再読み取りを必要とせずに、アイテムの更新を続けることができます。 たとえば、タグ配列を、製品のより正確な説明を含む新しい配列に置き換えることができます。

saddle["tags"] = ["brown", "new", "crisp"]

ドキュメントは既に更新されていますが、アイテムを再度更新する前に新しいアイテムを読み取る必要はありません。

response = container.replace_item(item=saddle, body=saddle)
saddle.price = 35.00;

この変更を保持するには、更新された項目を渡す replace メソッドを使用します。

await container.item(saddle.id, saddle.categoryId).replace(saddle);

アイテムの再読み取りを必要とせずに、アイテムの更新を続けることができます。 たとえば、タグ配列を、製品のより正確な説明を含む新しい配列に置き換えることができます。

item.tags = ["brown", "new", "crisp"];

ドキュメントは既に更新されていますが、アイテムを再度更新する前に新しいアイテムを読み取る必要はありません。

await container.item(saddle.id, saddle.categoryId).replace(saddle);

Cosmos DB では、 オプティミスティック コンカレンシー がサポートされ、項目が前回の読み取り以降に更新されたかどうかを確認し、競合エラーが発生した場合は競合エラーが返されます。 このコンカレンシー レベルの使用方法の詳細については、SDK のドキュメントを参照してください。