Freigeben über


UniqueKeyPolicy Klasse

Definition

Stellt die Richtlinienkonfiguration für eindeutige Schlüssel zum Angeben von Eindeutigkeitseinschränkungen für Dokumente in der Sammlung im Azure Cosmos DB-Dienst dar.

[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
Vererbung
UniqueKeyPolicy
Attribute

Beispiele

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 is unique. new UniqueKey { Paths = new Collection<string> { "/address" } }, } } }; DocumentCollection-Auflistung = 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 { // Fehler: Vor- und Nachname ist nicht eindeutig. 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 (z. B. StatusCode != System.Net.HttpStatusCode.Conflict) auslösen; }

try { // Fehler: Alias ist nicht eindeutig. 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 (z. B. StatusCode != System.Net.HttpStatusCode.Conflict) auslösen; }

Konstruktoren

UniqueKeyPolicy()

Stellt die Richtlinienkonfiguration für eindeutige Schlüssel zum Angeben von Eindeutigkeitseinschränkungen für Dokumente in der Sammlung im Azure Cosmos DB-Dienst dar.

Eigenschaften

UniqueKeys

Ruft eine Auflistung ab UniqueKey , die die Eindeutigkeit von Dokumenten in der Sammlung im Azure Cosmos DB-Dienst garantiert.

Gilt für: