DocumentClient.UpsertDocumentAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
UpsertDocumentAsync(String, Object, RequestOptions, Boolean, CancellationToken) |
Upserts a Document en tant qu’opération asychrone dans le service Azure Cosmos DB. |
UpsertDocumentAsync(Uri, Object, RequestOptions, Boolean, CancellationToken) |
Upserts un document en tant qu’opération asynchrone dans le service Azure Cosmos DB. |
UpsertDocumentAsync(String, Object, RequestOptions, Boolean, CancellationToken)
Upserts a Document en tant qu’opération asychrone dans le service Azure Cosmos DB.
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> UpsertDocumentAsync (string documentsFeedOrDatabaseLink, object document, Microsoft.Azure.Documents.Client.RequestOptions options = default, bool disableAutomaticIdGeneration = false, System.Threading.CancellationToken cancellationToken = default);
abstract member UpsertDocumentAsync : 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.UpsertDocumentAsync : 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 UpsertDocumentAsync (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))
Paramètres
- documentsFeedOrDatabaseLink
- String
Lien du DocumentCollection pour monter le document dans. Par exemple, dbs/db_rid/colls/coll_rid/
- document
- Object
Objet de document à mettre à jour.
- options
- RequestOptions
(Facultatif) Toutes les options de demande que vous souhaitez définir. Par exemple, spécification d’un déclencheur à exécuter lors de la création du document. RequestOptions
- disableAutomaticIdGeneration
- Boolean
(Facultatif) Désactive la génération automatique d’id. Si cette valeur est True, le système lève une exception si la propriété id est manquante dans le document.
- cancellationToken
- CancellationToken
(Facultatif) CancellationToken qui peut être utilisé par d’autres objets ou threads pour recevoir un avis d’annulation.
Retours
Document qui a été upserted contenu dans un Task objet représentant la réponse du service pour l’opération asynchrone.
Implémente
Exceptions
Si ou documentsFeedOrDatabaseLink
document
n’est pas défini.
Représente une consolidation des échecs qui se sont produits pendant le traitement asynchrone. Recherchez la ou les exceptions réelles dans InnerExceptions
Cette exception peut encapsuler de nombreux types d’erreurs différents. Pour déterminer l’erreur spécifique, examinez toujours la propriété StatusCode. Voici quelques codes courants que vous pouvez obtenir lors de la création d’un document :
StatusCode | Raison de l’exception |
---|---|
400 | BadRequest : cela signifie qu’il y a eu un problème avec le document fourni. Il est probable qu’il était vrai et qu’un disableAutomaticIdGeneration ID n’a pas été fourni |
403 | Interdit : cela signifie probablement que la collection dans laquelle vous essayez de monter le document est complète. |
409 | Conflit : cela signifie qu’un Document avec un ID correspondant au champ id de document déjà existant |
413 | RequestEntityTooLarge : cela signifie que le dépasse la Document taille maximale actuelle de l’entité. Consultez la documentation pour connaître les limites et les quotas. |
429 | TooManyRequests : cela signifie que vous avez dépassé le nombre d’unités de requête par seconde. Consultez la valeur DocumentClientException.RetryAfter pour voir combien de temps vous devez attendre avant de réessayer cette opération. |
Exemples
Azure Cosmos DB prend en charge un certain nombre de façons différentes d’utiliser des documents. Un document peut étendre 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.UpsertDocumentAsync("dbs/db_rid/colls/coll_rid/", new MyObject { MyProperty = "A Value" });
}
Un document peut être n’importe quel objet POCO qui peut être sérialisé au format JSON, même s’il ne s’étend pas à partir de Resource
public class MyPOCO
{
public string MyProperty {get; set;}
}
using (IDocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key"))
{
Document doc = await client.UpsertDocumentAsync("dbs/db_rid/colls/coll_rid/", new MyPOCO { MyProperty = "A Value" });
}
Un document peut également être un objet dynamique
using (IDocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key"))
{
Document doc = await client.UpsertDocumentAsync("dbs/db_rid/colls/coll_rid/", new { SomeProperty = "A Value" } );
}
Upsert a Document et exécutez un pré-déclencheur et un post-déclencheur
using (IDocumentClient client = new DocumentClient(new Uri("service endpoint"), "auth key"))
{
Document doc = await client.UpsertDocumentAsync(
"dbs/db_rid/colls/coll_rid/",
new { id = "DOC123213443" },
new RequestOptions
{
PreTriggerInclude = new List<string> { "MyPreTrigger" },
PostTriggerInclude = new List<string> { "MyPostTrigger" }
});
}
Voir aussi
S’applique à
UpsertDocumentAsync(Uri, Object, RequestOptions, Boolean, CancellationToken)
Upserts un document en tant qu’opération asynchrone dans le service Azure Cosmos DB.
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> UpsertDocumentAsync (Uri documentCollectionUri, object document, Microsoft.Azure.Documents.Client.RequestOptions options = default, bool disableAutomaticIdGeneration = false, System.Threading.CancellationToken cancellationToken = default);
abstract member UpsertDocumentAsync : 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.UpsertDocumentAsync : 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 UpsertDocumentAsync (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))
Paramètres
- documentCollectionUri
- Uri
URI de la collection de documents dans laquelle mettre à jour le document.
- document
- Object
objet document.
- options
- RequestOptions
Options de demande pour la demande.
- disableAutomaticIdGeneration
- Boolean
Désactive la génération automatique d’id, lève une exception si l’id est manquant.
- cancellationToken
- CancellationToken
(Facultatif) CancellationToken représentant l’annulation de la demande.
Retours
Objet de tâche représentant la réponse du service pour l’opération asynchrone.
Implémente
S’applique à
Azure SDK for .NET