使用 c# SDK 从 CosmosDb 中删除文档
Deleting document from CosmosDb using c# SDK
我正在尝试使用以下代码从 CosmosDB 中删除一个文档,但每次都会出现以下错误:"Microsoft.Azure.Documents.DocumentClientException: Entity with the specified id does not exist in the system"
文档肯定在数据库中:
这是我正在使用的代码:
this.client = new DocumentClient(new Uri(EndpointUri), PrimaryKey);
var docUri = UriFactory.CreateDocumentUri(DatabaseName, CollectionName, documentId);
var result = await this.client.DeleteDocumentAsync(docUri, new RequestOptions { PartitionKey = new PartitionKey("/id") });
有人知道问题出在哪里吗?
谢谢
RequestOptions
class中的PartitionKey
属性代表的值不是分区键的定义。
这意味着你删除的行应该是这样的:
var result = await this.client.DeleteDocumentAsync(docUri, new RequestOptions { PartitionKey = new PartitionKey(documentId) });
我正在尝试使用以下代码从 CosmosDB 中删除一个文档,但每次都会出现以下错误:"Microsoft.Azure.Documents.DocumentClientException: Entity with the specified id does not exist in the system"
文档肯定在数据库中:
这是我正在使用的代码:
this.client = new DocumentClient(new Uri(EndpointUri), PrimaryKey);
var docUri = UriFactory.CreateDocumentUri(DatabaseName, CollectionName, documentId);
var result = await this.client.DeleteDocumentAsync(docUri, new RequestOptions { PartitionKey = new PartitionKey("/id") });
有人知道问题出在哪里吗?
谢谢
RequestOptions
class中的PartitionKey
属性代表的值不是分区键的定义。
这意味着你删除的行应该是这样的:
var result = await this.client.DeleteDocumentAsync(docUri, new RequestOptions { PartitionKey = new PartitionKey(documentId) });