Compartir a través de


UniqueKeyPolicy Clase

Definición

Representa la configuración de directiva de clave única para especificar restricciones de unicidad en los documentos de la colección en el servicio 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
Herencia
UniqueKeyPolicy
Atributos

Ejemplos

var collectionSpec = new DocumentCollection { Id = "Collection with unique keys", UniqueKeyPolicy = new UniqueKeyPolicy { UniqueKeys = new Collection<UniqueKey> { // pair </name/first, name/last> es unique. new UniqueKey { Paths = new Collection<string> { "/name/first", "/name/last" } }, // /address es único. new UniqueKey { Paths = new Collection<string> { "/address" } }, } }; Colección DocumentCollection = await client. CreateDocumentCollectionAsync(databaseLink, collectionSpec });

var doc = JObject.Parse("{"name": { "first": "John", "last": "Smith" }, "alias":"johnsmith" }"); await client. CreateDocumentAsync(collection. SelfLink, doc);

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

try { // Error: first+last name no es único. doc = JObject.Parse("{"name": { "first": "John", "last": "Smith" }, "alias":"johnsmith1" }"); await client. CreateDocumentAsync(collection. SelfLink, doc); throw new Exception("CreateDocumentAsync should have thrown exception/conflict"); } catch (DocumentClientException ex) { if (por ejemplo, StatusCode != System.Net.HttpStatusCode.Conflict) throw; }

try { // Error: el alias no es único. doc = JObject.Parse("{"name": { "first": "James Jr", "last": "Smith" }, "alias":"jamessmith" }"); await client. CreateDocumentAsync(collection. SelfLink, doc); throw new Exception("CreateDocumentAsync should have thrown exception/conflict"); } catch (DocumentClientException ex) { if (por ejemplo, StatusCode != System.Net.HttpStatusCode.Conflict) throw; }

Constructores

UniqueKeyPolicy()

Representa la configuración de directiva de clave única para especificar restricciones de unicidad en los documentos de la colección en el servicio Azure Cosmos DB.

Propiedades

UniqueKeys

Obtiene la colección de esa garantía de UniqueKey unicidad de documentos en la colección en el servicio Azure Cosmos DB.

Se aplica a