Freigeben über


Container.CreateItemAsync<T> Methode

Definition

Erstellt ein Element als asynchronen Vorgang im Azure Cosmos-Dienst.

public abstract System.Threading.Tasks.Task<Microsoft.Azure.Cosmos.ItemResponse<T>> CreateItemAsync<T> (T item, Microsoft.Azure.Cosmos.PartitionKey? partitionKey = default, Microsoft.Azure.Cosmos.ItemRequestOptions requestOptions = default, System.Threading.CancellationToken cancellationToken = default);
abstract member CreateItemAsync : 'T * Nullable<Microsoft.Azure.Cosmos.PartitionKey> * Microsoft.Azure.Cosmos.ItemRequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Cosmos.ItemResponse<'T>>
Public MustOverride Function CreateItemAsync(Of T) (item As T, 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

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

Die ItemResponse<T> erstellte , die in einem Task -Objekt enthalten ist, das die Dienstantwort für den asynchronen Vorgang darstellt.

Ausnahmen

Stellt eine Konsolidierung von Fehlern dar, die während der asynchronen Verarbeitung aufgetreten sind. Suchen Sie in InnerExceptions nach den tatsächlichen Ausnahmen.

Diese Ausnahme kann viele verschiedene Fehlertypen kapseln. Um den spezifischen Fehler zu ermitteln, sehen Sie sich immer die StatusCode-Eigenschaft an. Einige häufige Codes, die Sie beim Erstellen eines Dokuments erhalten können, sind:

StatusCodeGrund für die Ausnahme
400BadRequest: Dies bedeutet, dass mit dem angegebenen Dokument ein Fehler aufgetreten ist.
403Verboten: Dies bedeutet wahrscheinlich, dass die Sammlung, in der Sie versucht haben, das Dokument zu erstellen, voll ist.
409Konflikt: Dies bedeutet, dass ein Element mit einer ID mit dem Id-Feld von item bereits vorhanden übereinstimmt.
413RequestEntityTooLarge: Dies bedeutet, dass das Element die aktuelle maximale Entitätsgröße überschreitet. Informationen zu Grenzwerten und Kontingenten finden Sie in der Dokumentation.
429TooManyRequests: 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.CreateItemAsync<ToDoActivity>(test, new PartitionKey(test.status));

Gilt für: