C# 如何确保Cosmos DB中属性的唯一性

C# 如何确保Cosmos DB中属性的唯一性,c#,azure,azure-cosmosdb,C#,Azure,Azure Cosmosdb,我们要求集合文档中特定字段的值必须是唯一的。此集合是分区的,因此我无法在每次插入之前编写触发器或SP来确保这一点(因为我希望确保整个集合的唯一性,而不仅仅是分区) 我遇到了以下链接,其中提到有一个uniqueKeyPolicy可以添加到集合中,但在官方文档中看不到任何示例或更多信息 最好的方法是什么 我发现的信息: -通过在DocumentCollection上使用UniqueKeyPolicy属性,添加为文档指定唯一索引的功能 更新:经过一些尝试后,我能够在创建新集合(非分区)时使用.NE

我们要求集合文档中特定字段的值必须是唯一的。此集合是分区的,因此我无法在每次插入之前编写触发器或SP来确保这一点(因为我希望确保整个集合的唯一性,而不仅仅是分区)

我遇到了以下链接,其中提到有一个uniqueKeyPolicy可以添加到集合中,但在官方文档中看不到任何示例或更多信息

最好的方法是什么

我发现的信息: -通过在DocumentCollection上使用UniqueKeyPolicy属性,添加为文档指定唯一索引的功能

更新:经过一些尝试后,我能够在创建新集合(非分区)时使用.NET代码中的DocumentClient完成此操作。但是有没有办法为现有集合添加此约束。我也找不到一种从门户网站上执行此操作的方法。有什么特别的地方我应该去看看吗?

Cosmos DB的DocumentDB API目前没有为属性提供唯一的索引。此功能在上列为“已启动”。也许有一些准备工作正在进行,以支持独特的索引,但目前没有官方文档说明它们的存在,或者如果它们确实存在,如何使用它们

编辑从.net SDK发行说明的更新可以看出,此功能最近已经推出。还没有官方文件发表。文档现已发布。

Cosmos DB的DocumentDB API目前没有为属性提供唯一索引。此功能在上列为“已启动”。也许有一些准备工作正在进行,以支持独特的索引,但目前没有官方文档说明它们的存在,或者如果它们确实存在,如何使用它们


编辑从.net SDK发行说明的更新可以看出,此功能最近已经推出。还没有官方文件发表。文档现已发布。

似乎无法跨分区执行唯一键,唯一键只能在集合创建期间定义。发件人:

创建容器时必须定义唯一键,并且 唯一键的作用域为分区键。在先前的基础上再接再厉 例如,如果您基于邮政编码进行分区,那么 表中的记录在每个分区中重复

无法更新现有容器以使用唯一密钥


似乎没有办法跨分区执行唯一键,唯一键只能在集合创建期间定义。发件人:

创建容器时必须定义唯一键,并且 唯一键的作用域为分区键。在先前的基础上再接再厉 例如,如果您基于邮政编码进行分区,那么 表中的记录在每个分区中重复

无法更新现有容器以使用唯一密钥


自上周以来,情况似乎有所改变。我能够从c#文档客户端创建这样的集合。相应地更新了我的问题。这看起来自上周以来有所变化。我能够从c#文档客户端创建这样的集合。相应地更新了我的问题。