Freigeben über


DocumentClient.CreateDocumentAsync Methode

Definition

Überlädt

CreateDocumentAsync(String, Object, RequestOptions, Boolean, CancellationToken)

Erstellt ein Dokument als asychronen Vorgang im Azure Cosmos DB-Dienst.

CreateDocumentAsync(Uri, Object, RequestOptions, Boolean, CancellationToken)

Erstellt ein Dokument als asychronen Vorgang im Azure Cosmos DB-Dienst.

CreateDocumentAsync(String, Object, RequestOptions, Boolean, CancellationToken)

Erstellt ein Dokument als asychronen Vorgang im Azure Cosmos DB-Dienst.

public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> CreateDocumentAsync (string documentsFeedOrDatabaseLink, object document, Microsoft.Azure.Documents.Client.RequestOptions options = default, bool disableAutomaticIdGeneration = false, System.Threading.CancellationToken cancellationToken = default);
abstract member CreateDocumentAsync : string * obj * Microsoft.Azure.Documents.Client.RequestOptions * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
override this.CreateDocumentAsync : string * obj * Microsoft.Azure.Documents.Client.RequestOptions * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
Public Function CreateDocumentAsync (documentsFeedOrDatabaseLink As String, document As Object, Optional options As RequestOptions = Nothing, Optional disableAutomaticIdGeneration As Boolean = false, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ResourceResponse(Of Document))

Parameter

documentsFeedOrDatabaseLink
String

Der Link des , in dem DocumentCollection das Dokument erstellt werden soll. z.B. dbs/db_rid/colls/coll_rid/

document
Object

Das zu erstellende Dokumentobjekt.

options
RequestOptions

(Optional) Alle Anforderungsoptionen, die Sie festlegen möchten. Beispiel: Angeben eines Triggers, der beim Erstellen des Dokuments ausgeführt werden soll. RequestOptions

disableAutomaticIdGeneration
Boolean

(Optional) Deaktiviert die automatische ID-Generierung. Wenn dies True ist, löst das System eine Ausnahme aus, wenn die Id-Eigenschaft im Dokument fehlt.

cancellationToken
CancellationToken

(Optional) Ein CancellationToken , der von anderen Objekten oder Threads verwendet werden kann, um eine Benachrichtigung über den Abbruch zu erhalten.

Gibt zurück

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

Implementiert

Ausnahmen

Wenn oder documentsFeedOrDatabaseLinkdocument nicht festgelegt ist.

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. Es ist wahrscheinlich, dass disableAutomaticIdGeneration wahr war, und es wurde keine ID angegeben.
403Verboten: Dies bedeutet wahrscheinlich, dass die Sammlung, in der Sie versucht haben, das Dokument zu erstellen, voll ist.
409Konflikt: Dies bedeutet, dass eine Document mit einer ID übereinstimmt, die dem Id-Feld von document bereits vorhanden entspricht.
413RequestEntityTooLarge: Dies bedeutet, dass die Document 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. Lesen Sie den DocumentClientException.RetryAfter-Wert, um zu sehen, wie lange Sie warten sollten, bevor Sie diesen Vorgang wiederholen.

Beispiele

Azure Cosmos DB unterstützt eine Reihe verschiedener Möglichkeiten zum Arbeiten mit Dokumenten. Ein Dokument kann erweitert werden. Resource

public class MyObject : Resource
{
    public string MyProperty {get; set;}
}

using (IDocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key"))
{
    Document doc = await client.CreateDocumentAsync("dbs/db_rid/colls/coll_rid/", new MyObject { MyProperty = "A Value" });
}

Ein Dokument kann ein beliebiges POCO-Objekt sein, das in JSON serialisiert werden kann, auch wenn es nicht von Resource

public class MyPOCO
{
    public string MyProperty {get; set;}
}

using (IDocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key"))
{
    Document doc = await client.CreateDocumentAsync("dbs/db_rid/colls/coll_rid/", new MyPOCO { MyProperty = "A Value" });
}

Schließlich kann ein Dokument auch ein dynamisches Objekt sein.

using (IDocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key"))
{
    Document doc = await client.CreateDocumentAsync("dbs/db_rid/colls/coll_rid/", new { SomeProperty = "A Value" } );
}

Erstellen eines Dokuments und Ausführen eines Pre- und Post-Triggers

using (IDocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key"))
{
    Document doc = await client.CreateDocumentAsync(
        "dbs/db_rid/colls/coll_rid/",
        new { id = "DOC123213443" },
        new RequestOptions
        {
            PreTriggerInclude = new List<string> { "MyPreTrigger" },
            PostTriggerInclude = new List<string> { "MyPostTrigger" }
        });
}

Weitere Informationen

Gilt für:

CreateDocumentAsync(Uri, Object, RequestOptions, Boolean, CancellationToken)

Erstellt ein Dokument als asychronen Vorgang im Azure Cosmos DB-Dienst.

public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> CreateDocumentAsync (Uri documentCollectionUri, object document, Microsoft.Azure.Documents.Client.RequestOptions options = default, bool disableAutomaticIdGeneration = false, System.Threading.CancellationToken cancellationToken = default);
abstract member CreateDocumentAsync : Uri * obj * Microsoft.Azure.Documents.Client.RequestOptions * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
override this.CreateDocumentAsync : Uri * obj * Microsoft.Azure.Documents.Client.RequestOptions * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
Public Function CreateDocumentAsync (documentCollectionUri As Uri, document As Object, Optional options As RequestOptions = Nothing, Optional disableAutomaticIdGeneration As Boolean = false, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ResourceResponse(Of Document))

Parameter

documentCollectionUri
Uri

der URI der Dokumentauflistung, in der das Dokument erstellt werden soll.

document
Object

das Dokumentobjekt.

options
RequestOptions

Die Anforderungsoptionen für die Anforderung.

disableAutomaticIdGeneration
Boolean

Deaktiviert die automatische ID-Generierung, löst eine Ausnahme aus, wenn id fehlt.

cancellationToken
CancellationToken

(Optional) CancellationToken stellt den Anforderungsabbruch dar.

Gibt zurück

Das Aufgabenobjekt, das die Dienstantwort für den asynchronen Vorgang darstellt.

Implementiert

Gilt für: