没有子级的弹性搜索NEST访问聚合

时间:2020-11-02 16:55:53

标签: elasticsearch nest

所以我有以下聚合查询:


 var request2 = _client.Search<T>(s => s
                .Aggregations(aggs =>
                        {
                            foreach (var facet in facetsOptions)
                            {
                                if (facet.Value.Ranges.Count == 0)
                                {
                                    aggs.Terms(facet.Key, t => t.Field(facet.Key));
                                }
                                else
                                {
                                    var list = new List<Func<AggregationRangeDescriptor, IAggregationRange>>();
                                
                                    foreach (var range in facet.Value.Ranges)
                                    {
                                        list.Add(x => x.From(range.From).To(range.To));
                                    }
                                
                                    aggs.Range(facet.Key, r => r.Field(facet.Key).Ranges(list.ToArray()));
                                }
                            }
            
                            return aggs;
                        }
                    ));

检查结果时,我可以看到所有所需的数据,如下所示:

debug

但是,当我尝试执行request.Aggregations.Values[0].时,无法访问items中的任何内容,因此我在此处检查了文档:https://www.elastic.co/guide/en/elasticsearch/client/net-api/current/writing-aggregations.html

但是,有一些示例期望使用我不使用的.children,还有其他替代方法吗?

0 个答案:

没有答案
相关问题