Container.PatchItemAsync<T> Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Aplica revisiones a un elemento del servicio Azure Cosmos como una operación asincrónica.
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))
Parámetros de tipo
- T
Parámetros
- id
- String
Identificador de elemento de Cosmos del elemento que se va a aplicar revisiones.
- partitionKey
- PartitionKey
PartitionKey para el elemento
- patchOperations
- IReadOnlyList<PatchOperation>
Representa una lista de operaciones que se aplicarán secuencialmente al elemento de Cosmos al que se hace referencia.
- requestOptions
- PatchItemRequestOptions
(Opcional) Las opciones de la solicitud de elemento.
- cancellationToken
- CancellationToken
(Opcional) CancellationToken que representa la cancelación de la solicitud.
Devoluciones
que Task contiene un ItemResponse<T> objeto que encapsula el registro de recursos actualizado.
Ejemplos
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"]
}*/
Comentarios
El valor de clave de partición del elemento es inmutable. Para cambiar el valor de clave de partición de un elemento, debe eliminar el elemento original e insertar un nuevo elemento. Las operaciones de revisión son atómicas y se ejecutan secuencialmente. De forma predeterminada, el cuerpo del recurso se devolverá como parte de la respuesta. El usuario no puede solicitar contenido estableciendo la marca EnableContentResponseOnWrite en false.
Se aplica a
Azure SDK for .NET