我正在对执行搜索查询 several indices
因此,在结果列表中可能有几种数据类型。
(我使用c#,.nest库获取结果)示例:
var queryResult = await _elasticClient.SearchAsync<object>(q => q
.Query(s => s
/// ... some query logic doesn't really matter
)
).Index("index-name-1,index-name-2,index-name-3")
结果集可能是这样的:
[
{
"LastName": 0,
"listType": [1,2,3],
"Name": "alex"
},
{
"amount": 5,
"amountType": "usd"
}
...
]
``` `queryResult.Documents` 我收到了所有这些数据 `Dictionary<string,string>` 类型,但我希望根据json类型将它们作为各种poco(普通的旧c#object)对象接收。基本上,我需要.nest来推断不同文档的索引,并根据poco对象来解析它们。
有没有办法通过.nest本身来确定索引类型,或者我可以使用一些json解析库来代替它 `Newtonsoft.Json`
1条答案
按热度按时间3z6pesqy1#
Nest7.x不执行任何json对象或索引到c类型的推断。但是,您可以使用同样保存类型信息的json序列化程序,以便序列化程序可以在反序列化时使用此信息来反序列化为正确的类型。