Container.ReplaceItemAsync<T> Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ersetzt ein Element im Azure Cosmos-Dienst als asynchronen Vorgang.
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))
Typparameter
- T
Parameter
- item
- T
Ein serialisierbares JSON-Objekt, das eine id-Eigenschaft enthalten muss. CosmosSerializer , um ein benutzerdefiniertes Serialisierungsprogramm zu implementieren.
- id
- String
Die Cosmos-Element-ID des vorhandenen Elements.
- partitionKey
- Nullable<PartitionKey>
PartitionKey für das Element. Wenn nicht angegeben, wird durch Extrahieren aus {T} aufgefüllt.
- requestOptions
- ItemRequestOptions
(Optional) Die Optionen für die Elementanforderung.
- cancellationToken
- CancellationToken
(Optional) CancellationToken stellt den Anforderungsabbruch dar.
Gibt zurück
Ein Task , der einen ItemResponse<T> enthält, der den aktualisierten Ressourcendatensatz umschließt.
Ausnahmen
Wenn beides item
nicht festgelegt ist.
Diese Ausnahme kann viele verschiedene Fehlertypen kapseln. Um den spezifischen Fehler zu ermitteln, sehen Sie sich immer die StatusCode-Eigenschaft an.
StatusCode | Grund für die Ausnahme |
---|---|
400 | BadRequest: Dies bedeutet, dass mit dem angegebenen Dokument ein Fehler aufgetreten ist. |
403 | Verboten: Dies bedeutet wahrscheinlich, dass die Sammlung, in der Sie versucht haben, das Dokument zu erstellen, voll ist. |
413 | RequestEntityTooLarge: Dies bedeutet, dass das Element die aktuelle maximale Entitätsgröße überschreitet. Informationen zu Grenzwerten und Kontingenten finden Sie in der Dokumentation. |
429 | TooManyRequests: Dies bedeutet, dass Sie die Anzahl der Anforderungseinheiten pro Sekunde überschritten haben. |
Beispiele
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));
Hinweise
Der Partitionsschlüsselwert des Elements ist unveränderlich. Um den Partitionsschlüsselwert eines Elements zu ändern, müssen Sie das ursprüngliche Element löschen und ein neues Element einfügen.
Gilt für:
Azure SDK for .NET