c# - 使用 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") });
有人知道问题可能是什么吗?
谢谢
解决方案
类中的PartitionKey
属性RequestOptions
表示值而不是分区键的定义。
这意味着您的删除行应该是这样的:
var result = await this.client.DeleteDocumentAsync(docUri, new RequestOptions { PartitionKey = new PartitionKey(documentId) });
推荐阅读
- node.js - 如何在没有模数检查的情况下确保公钥属于私钥(RSA)?
- azure - 无法在 Azure 机密计算 (ACC) 上创建 VM
- java - 在正则表达式中分离突发部分
- python - 如何垂直打印水平列表?更多信息在下面
- fortran - 逐行读取不同变量的文本文件
- html - 将设计表单输入值设置到 div 的右侧
- java - StringBuffer中“buffer”这个词怎么表示同步
- javascript - 如何通过 post 方法和 nodejs 发送多种编码类型?
- java - Android-Studio:如何将地图附加到 NavigationDrawer 片段
- python - 无法按标签删除熊猫数据框中的列