Container.ReplaceItemAsync<T> Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Substitui um item no serviço do Azure Cosmos como uma operação assíncrona.
public abstract System.Threading.Tasks.Task<Microsoft.Azure.Cosmos.ItemResponse<T>> ReplaceItemAsync<T> (T item, string id, Microsoft.Azure.Cosmos.PartitionKey? partitionKey = default, Microsoft.Azure.Cosmos.ItemRequestOptions requestOptions = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReplaceItemAsync : 'T * string * Nullable<Microsoft.Azure.Cosmos.PartitionKey> * Microsoft.Azure.Cosmos.ItemRequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Cosmos.ItemResponse<'T>>
Public MustOverride Function ReplaceItemAsync(Of T) (item As T, id As String, Optional partitionKey As Nullable(Of PartitionKey) = Nothing, Optional requestOptions As ItemRequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ItemResponse(Of T))
Parâmetros de tipo
- T
Parâmetros
- item
- T
Um objeto serializável JSON que deve conter uma propriedade id. CosmosSerializer para implementar um serializador personalizado.
- id
- String
A ID do item do Cosmos do item existente.
- partitionKey
- Nullable<PartitionKey>
PartitionKey para o item. Se não for especificado, será populado extraindo de {T}
- requestOptions
- ItemRequestOptions
(Opcional) As opções para a solicitação de item.
- cancellationToken
- CancellationToken
(Opcional) CancellationToken que representa o cancelamento da solicitação.
Retornos
Um Task que contém um ItemResponse<T> que encapsula o registro de recurso atualizado.
Exceções
Se um dos dois item
não estiver definido.
Essa exceção pode encapsular muitos tipos diferentes de erros. Para determinar o erro específico, sempre examine a propriedade StatusCode.
StatusCode | Motivo da exceção |
---|---|
400 | BadRequest - Isso significa que algo estava errado com o documento fornecido. |
403 | Proibido – isso provavelmente significa que a coleção na qual você estava tentando criar o documento está cheia. |
413 | RequestEntityTooLarge - Isso significa que o item excede o tamanho máximo da entidade atual. Consulte a documentação sobre limites e cotas. |
429 | TooManyRequests - Isso significa que você excedeu o número de unidades de solicitação por segundo. |
Exemplos
public class ToDoActivity{
public string id {get; set;}
public string status {get; set;}
}
ToDoActivity test = new ToDoActivity()
{
id = Guid.NewGuid().ToString(),
status = "InProgress"
};
ItemResponse item = await this.container.ReplaceItemAsync<ToDoActivity>(test, test.id, new PartitionKey(test.status));
Comentários
O valor da chave de partição do item é imutável. Para alterar o valor da chave de partição de um item, você deve excluir o item original e inserir um novo item.
Aplica-se a
Azure SDK for .NET