给定类型T : Document
和PartitionKeyDefinition
的通用对象,如何获得与该资源对应的PartitionKey
?我使用反射来处理一些简单的情况,但我必须想象有一些内置函数可以在所有情况下执行此操作。我找不到它。
答案 0 :(得分:0)
根据您的描述,我创建了一个结构如下的文档:
{
"id": "73e799df-b7a5-7470-4f25-ee6c1811a5b4",
"tblType": "search",
"user": {
"memberId": 2
}
}
注意:分区键为/user/memberId
。
给定T:Document类型的通用对象和PartitionKeyDefinition,如何获得与该资源对应的PartitionKey?
我想你想要根据PartitionKeyDefinition
从文档实例中检索分区键。我创建了文档模型并按如下方式检索文档:
var results=client.CreateDocumentQuery<MyDocument>(UriFactory.CreateDocumentCollectionUri(DatabaseId,
DocumentCollectionId), "select * from c where c.user.memberId=2").ToList();
为了从给定的文档对象中检索分区键,您可以参考以下代码片段:
var obj = JObject.FromObject(results[0]);
var result=obj.SelectToken("user.memberId"); //2