Partager via


UniqueKeyPolicy Classe

Définition

Représente la configuration de la stratégie de clé unique permettant de spécifier des contraintes d’unicité sur les documents de la collection dans le service Azure Cosmos DB.

public sealed class UniqueKeyPolicy : Microsoft.Azure.Documents.JsonSerializable
type UniqueKeyPolicy = class
    inherit JsonSerializable
Public NotInheritable Class UniqueKeyPolicy
Inherits JsonSerializable
Héritage
UniqueKeyPolicy

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 await. CreateDocumentAsync(collection. SelfLink, doc);

doc = JObject.Parse(« {"name »: { « first »: « James », « last »: « Smith » }, « alias »:"jamessmith » } »); client await. CreateDocumentAsync(collection. SelfLink, doc);

try { // Erreur : prénom+nom n’est pas unique. doc = JObject.Parse(« {"name »: { « first »: « John », « last »: « Smith » }, « alias »:"johnsmith1 » } »); client await. CreateDocumentAsync(collection. SelfLink, doc); throw new Exception(« CreateDocumentAsync should have thrown exception/conflict »); } catch (DocumentClientException ex) { if (ex. StatusCode != System.Net.HttpStatusCode.Conflict) throw; }

try { // Error : alias n’est pas unique. doc = JObject.Parse(« {"name »: { « first »: « James Jr », « last »: « Smith » }, « alias »:"jamessmith » } »); client await. CreateDocumentAsync(collection. SelfLink, doc); throw new Exception(« CreateDocumentAsync should have thrown exception/conflict »); } catch (DocumentClientException ex) { if (ex. StatusCode != System.Net.HttpStatusCode.Conflict) throw; }

Constructeurs

UniqueKeyPolicy()

Initialise une nouvelle instance de la UniqueKeyPolicy classe pour le service Azure Cosmos DB.

Propriétés

UniqueKeys

Obtient ou définit la collection de UniqueKey qui garantissent l’unicité des documents dans la collection dans le service Azure Cosmos DB.

Méthodes

Equals(Object)

Représente la configuration de la stratégie de clé unique permettant de spécifier des contraintes d’unicité sur les documents de la collection dans le service Azure Cosmos DB.

GetHashCode()

Représente la configuration de la stratégie de clé unique permettant de spécifier des contraintes d’unicité sur les documents de la collection dans le service Azure Cosmos DB.

LoadFrom(JsonReader)

Charge l’objet à partir du lecteur JSON spécifié dans le service Azure Cosmos DB.

(Hérité de JsonSerializable)
LoadFrom(JsonReader, JsonSerializerSettings)

Charge l’objet à partir du lecteur JSON spécifié dans le service Azure Cosmos DB.

(Hérité de JsonSerializable)
SaveTo(Stream, SerializationFormattingPolicy)

Enregistre l’objet dans le flux spécifié dans le service Azure Cosmos DB.

(Hérité de JsonSerializable)
SaveTo(Stream, SerializationFormattingPolicy, JsonSerializerSettings)

Enregistre l’objet dans le flux spécifié dans le service Azure Cosmos DB.

(Hérité de JsonSerializable)
ToString()

Retourne la représentation sous forme de chaîne de l’objet dans le service Azure Cosmos DB.

(Hérité de JsonSerializable)

S’applique à