UniqueKeyPolicy Classe
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.
Représente la configuration de stratégie de clé unique pour spécifier des contraintes d’unicité sur les documents de la collection dans le service Azure Cosmos DB.
[System.Text.Json.Serialization.JsonConverter(typeof(Azure.Cosmos.TextJsonUniqueKeyPolicyConverter))]
public sealed class UniqueKeyPolicy
[<System.Text.Json.Serialization.JsonConverter(typeof(Azure.Cosmos.TextJsonUniqueKeyPolicyConverter))>]
type UniqueKeyPolicy = class
Public NotInheritable Class UniqueKeyPolicy
- Héritage
-
UniqueKeyPolicy
- Attributs
Exemples
var collectionSpec = new DocumentCollection { Id = « Collection with unique keys », UniqueKeyPolicy = new UniqueKeyPolicy { UniqueKeys = new Collection<UniqueKey> { // pair </name/first, name/last> is unique. new UniqueKey { Paths = new Collection<string> { « /name/first », « /name/last » } }, // /address est unique. new UniqueKey { Paths = new Collection<string> { « /address » } }, } } }; Collection DocumentCollection = client await. CreateDocumentCollectionAsync(databaseLink, collectionSpec });
var doc = JObject.Parse(« {"name »: { « first »: « John », « last »: « Smith » }, « alias »:"johnsmith » } »); client d’attente. CreateDocumentAsync(collection). SelfLink, doc);
doc = JObject.Parse(« {"name »: { « first »: « James », « last »: « Smith » }, « alias »:"jamessmith » } »); client d’attente. CreateDocumentAsync(collection). SelfLink, doc);
try { // Erreur : prénom+nom n’est pas unique. doc = JObject.Parse(« {"name »: { « first »: « John », « last »: « Smith » }, « alias »:"johnsmith1 » } »); client d’attente. CreateDocumentAsync(collection). SelfLink, doc); lever une nouvelle exception(« CreateDocumentAsync aurait dû lever une exception/un conflit »); } catch (DocumentClientException ex) { if (ex. StatusCode != System.Net.HttpStatusCode.Conflict) throw; }
try { // Erreur : l’alias n’est pas unique. doc = JObject.Parse(« {"name »: { « first »: « James Jr », « last »: « Smith » }, « alias »:"jamessmith » } »); client d’attente. CreateDocumentAsync(collection). SelfLink, doc); lever une nouvelle exception(« CreateDocumentAsync aurait dû lever une exception/un conflit »); } catch (DocumentClientException ex) { if (ex. StatusCode != System.Net.HttpStatusCode.Conflict) throw; }
Constructeurs
UniqueKeyPolicy() |
Représente la configuration de stratégie de clé unique pour spécifier des contraintes d’unicité sur les documents de la collection dans le service Azure Cosmos DB. |
Propriétés
UniqueKeys |
Obtient la collection de UniqueKey qui garantit l’unicité des documents dans la collection dans le service Azure Cosmos DB. |
S’applique à
Azure SDK for .NET