NEST(ElasticSearch)条款汇总未确认查询

时间:2020-04-03 16:18:45

标签: elasticsearch-aggregation

我有如下搜索请求:

            var response = client.Search<ProductElastic>(s => s

                .Query(q => q
                        .Bool(b => b
                            .Should(mu => mu
                                .Match(m => m
                                    .Field(f => f.title)
                                    .Boost(1.5)
                                    .Query(inputfilter.q)
                                ), mu => mu
                                .Match(m => m
                                    .Field(f => f.content)
                                    .Query(inputfilter.q)
                                )
                            )

                        )
                    )

                 .Aggregations(a => a
                        .Terms("doctype_i", he => he
                            .Field(g => g.doctype_i)
                        )
                        .Terms("category_i", e => e
                            .Field(ge => ge.category_i)
                            .Size(100)
                        )
                    )

            );

inputfilter.q保存搜索词。当inputfilter.q为null时,它将返回所有结果,并且我的聚合存储桶编号已准确表示。定义inputfilter.q后(例如搜索“ test”),它会优化结果集,但是,我的聚合存储桶仍然像以前一样为我提供完整的数字,就好像什么都没有搜索。作为记录,doctype_icategory_i是Elastic中的整数类型字段。

我如何使我的.Aggregations确认.Query,以便聚合存储桶根据结果集反映数字?

0 个答案:

没有答案