CosmosDB DocumentCollection可以在创建后更改分区键吗?

时间:2017-06-29 12:52:36

标签: c# azure-cosmosdb

您可以在创建`DocumentCollection:

时设置分区键
var documentCollection = new DocumentCollection();
documentCollection.PartitionKey.Paths.Add("/partitionKey");

可以在以后更改,并导致CosmosDB重新分区现有文档吗?

1 个答案:

答案 0 :(得分:3)

我尝试使用ReplaceDocumentCollectionAsync,就像你changing the indexing policy一样。

var collection = readResponse.Resource;
collection.PartitionKey.Paths.Clear();
collection.PartitionKey.Paths.Add("/PartitionKey");

var replaceResponse = await documentClient.ReplaceDocumentCollectionAsync(collection);

我有一个例外:

  

DocumentClientException:消息:{“错误”:[“无法更改文档集合分区键。”]}

所以,不,在创建集合后无法更改分区键。