我的记录是错误数据的结果,其中分区键是null
,我需要清理它们,但到目前为止我还没有成功。
这是我尝试过的:
var scriptResult = await _dbClient.ExecuteStoredProcedureAsync<dynamic>(
GetStoredProcLink("BulkDelete"),
new RequestOptions() { PartitionKey = new PartitionKey(""), EnableScriptLogging = true },
"select * from c where c.documentDbType = "SomeValue"");
我还尝试使用Undefined.Value
作为new PartitionKey()
的参数。
我从here中删除了存储过程并且还没有改变任何内容。
注意:如果不明显(/companyId
)
答案 0 :(得分:0)
Null,Undefined和empty字符串在Cosmos DB中都是不同的值。你需要这样的东西:new RequestOptions { PartitionKey = new PartitionKey(null) }
答案 1 :(得分:0)
在迁移到新的数据库级别吞吐量提供时,我刚刚遇到了此问题。当我的模型不包含指定的分区Key属性时,这种语法使我重新启动并运行:
new RequestOptions() {
PartitionKey = new PartitionKey(Undefined.Value)
}
参考: https://www.lytzen.name/2016/12/06/find-docs-with-no-partitionkey-in-azure.html