迭代NEST桶

时间:2014-04-22 22:01:42

标签: elasticsearch nest

我正在尝试NEST,看起来非常好,但我在理解某些事情时遇到了一些麻烦。 响应被序列化为对象的层次结构。我想迭代它并创建我自己的结构。 我可以做这样的事情(感谢@Martijn Laarman,他在GitHub页面帮助过我):

var buckets = result.Aggs.Terms("level_1");
var term = buckets.Items[0].Terms("level_2");

它有效,但我希望有一个解析响应的通用算法。为此,我希望独立于查询获取内容(如果它使用了术语,范围等)。所以我想做的事情如下:

var buckets = result.Aggregrations["level_1"];
var term = buckets.Items[0].Aggreggation["level_2"];

不幸的是,Aggregations集合返回了Nest.Bucket,我无法从那里做任何事情。 有没有什么方法可以独立地根据查询的形成迭代结果?

谢谢!

1 个答案:

答案 0 :(得分:0)

为了完整起见,我无法找到任何方法。 我使用JObects和Dictionary的混合创建了一个解析器,并通过JSON响应进行操作,以生成我想要的输出。