猿问

使用 c# SDK 从 CosmosDb 中删除文档

我正在尝试使用以下代码从 CosmosDB 中删除一个文档,但每次都出现以下错误:“Microsoft.Azure.Documents.DocumentClientException:系统中不存在具有指定 ID 的实体”

该文档肯定在数据库中: 

这是我正在使用的代码:

    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") });

有人知道问题可能是什么吗?

谢谢


青春有我
浏览 114回答 1
1回答

慕田峪7331174

类中的PartitionKey属性RequestOptions表示值而不是分区键的定义。这意味着您删除的行应该是这样的:var result = await this.client.DeleteDocumentAsync(docUri, new RequestOptions { PartitionKey = new PartitionKey(documentId) });
随时随地看视频慕课网APP
我要回答