Container.PatchItemAsync<T> メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
非同期操作として Azure Cosmos サービス内の項目にパッチを適用します。
public abstract System.Threading.Tasks.Task<Microsoft.Azure.Cosmos.ItemResponse<T>> PatchItemAsync<T> (string id, Microsoft.Azure.Cosmos.PartitionKey partitionKey, System.Collections.Generic.IReadOnlyList<Microsoft.Azure.Cosmos.PatchOperation> patchOperations, Microsoft.Azure.Cosmos.PatchItemRequestOptions requestOptions = default, System.Threading.CancellationToken cancellationToken = default);
abstract member PatchItemAsync : string * Microsoft.Azure.Cosmos.PartitionKey * System.Collections.Generic.IReadOnlyList<Microsoft.Azure.Cosmos.PatchOperation> * Microsoft.Azure.Cosmos.PatchItemRequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Cosmos.ItemResponse<'T>>
Public MustOverride Function PatchItemAsync(Of T) (id As String, partitionKey As PartitionKey, patchOperations As IReadOnlyList(Of PatchOperation), Optional requestOptions As PatchItemRequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ItemResponse(Of T))
型パラメーター
- T
パラメーター
- id
- String
修正プログラムを適用するアイテムの Cosmos アイテム ID。
- partitionKey
- PartitionKey
PartitionKey アイテムの
- patchOperations
- IReadOnlyList<PatchOperation>
参照される Cosmos アイテムに順次適用される操作の一覧を表します。
- requestOptions
- PatchItemRequestOptions
(省略可能)アイテム要求のオプション。
- cancellationToken
- CancellationToken
(省略可能) CancellationToken 要求の取り消しを表します。
戻り値
Task<ItemResponse<T>>
Task更新されたリソース レコードをItemResponse<T>ラップする を含む 。
例
public class ToDoActivity{
public string id {get; set;}
public string status {get; set;}
public string description {get; set;}
public int frequency {get; set;}
}
ToDoActivity toDoActivity = await this.container.ReadItemAsync<ToDoActivity>("id", new PartitionKey("partitionKey"));
/* toDoActivity = {
"id" : "someId",
"status" : "someStatusPK",
"description" : "someDescription",
"frequency" : 7
}*/
List<PatchOperation> patchOperations = new List<PatchOperation>()
{
PatchOperation.Add("/daysOfWeek", new string[]{"Monday", "Thursday"}),
PatchOperation.Replace("/frequency", 2),
PatchOperation.Remove("/description")
};
ItemResponse<dynamic> item = await this.container.PatchItemAsync<dynamic>(toDoActivity.id, new PartitionKey(toDoActivity.status), patchOperations);
/* item.Resource = {
"id" : "someId",
"status" : "someStatusPK",
"description" : null,
"frequency" : 2,
"daysOfWeek" : ["Monday", "Thursday"]
}*/
注釈
項目のパーティション キー値は変更できません。 項目のパーティション キー値を変更するには、元の項目を削除し、新しい項目を挿入する必要があります。 パッチ操作はアトミックであり、順番に実行されます。 既定では、リソース本文は応答の一部として返されます。 ユーザーは、フラグを false に設定 EnableContentResponseOnWrite することで、コンテンツを要求できません。
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
Azure SDK for .NET