我想从 Raven DB 数据库中提取 Json 属性。我从 Ravendb 工作室从索引中提取它,如下所示。在下面的查询中,参数 Body
类型为 json
我想从中提取它的一个字段(假设 field1)。怎么做到呢?
from index 'Selectdata' as message
order by message.ProcessedAt desc
select {
UniqueMessageId: message.UniqueMessageId,
MessageId: message.MessageMetadata.MessageId,
MessageType: message.Headers["EnclosedMessageTypes"],
TimeSent: message.Headers["TimeSent"],
ProcessingStarted: message.Headers["ProcessingStarted"],
ProcessingEnded: message.Headers["ProcessingEnded"],
ProcessingEndpoint: message.Headers["ProcessingEndpoint"],
ProcessedAt : message.ProcessedAt,
Body:message.MessageMetadata.Body //json body
}
最佳答案
使用 全文检索在“ body ”字段上。
请参阅 RavenDB Demo 中的代码示例:
带有静态索引的全文搜索 - 单字段
https://demo.ravendb.net/demos/csharp/text-search/fts-with-static-index-single-field
带有静态索引的全文搜索 - 多个字段
https://demo.ravendb.net/demos/csharp/text-search/fts-with-static-index-multiple-fields
也可以使用 Search()
'Body' 字段属性的方法。见 https://ravendb.net/docs/article-page/5.0/Csharp/client-api/session/querying/how-to-use-search
关于ravendb - 从 RavenDB 中提取 Json 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63109990/