如何查询Ravendb文档大小

4
我有一个场景,需要在我的Ravendb数据库中查找最大的文档。
当我在Ravendb Studio中选择任何给定的文档时,大小会显示在属性部分,如此屏幕截图中红圈所示:

document properties

有没有一条查询语句可以按照“Size”属性对文档进行排序,以便我可以识别出最大的文档?
2个回答

4
也许编写一个使用反射计算对象大小的方法。
然后,创建一个名为“size”的字段的静态映射索引
并在索引中使用您将在“附加来源”中提供的方法进行设置
请参见https://ravendb.net/docs/article-page/4.2/Csharp/studio/database/indexes/create-map-index#additional-sources
然后,您可以查询此索引并按“size”字段排序


fyi - 您可以使用以下端点获取特定文档的大小:

{yourServerUrl}/databases/{yourDatabaseName}/docs/size?id={yourDocumentId}

了解 RavenDB REST API,请访问:
https://ravendb.net/docs/article-page/4.2/csharp/client-api/rest-api/rest-api-intro


1

索引(Map)定义:

from doc in docs
select new {
    doc.BlittableJson.Size
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接