所以读这个:

https://www.elastic.co/guide/zh-CN/elasticsearch/client/net-api/7.x/field-inference.html

给一类

public class MyData {
    public Guid UserId { get; set; }
    public decimal Value { get; set; }
}

我希望能够做类似的事情:

var fieldExpression = Field<MyData >(p => p.Value);

但我收到错误消息The non-generic type Field cannot be used with type arguments

我正在使用Nest 7.1.0。

我的目标是能够创建一种方法,该方法可以传入聚合和查询,然后将其组合成在嵌套ElasticClient的实例上运行。

像(我认为)

            var sr = new SearchRequest<MyData>
            {
                Aggregations = new ChildrenAggregation("name_of_child_agg", typeof(decimal?))
                {
                    Aggregations =
                        new AverageAggregation("average_per_child", Field<MyData>(p => p.value))
                        && new MaxAggregation("max_per_child", Field<MyData>(p => p.value))
                        && new MinAggregation("min_per_child", Field<MyData>(p => p.value))
                }
            };

_client.Search<MyData>(sr);

#1楼 票数:2 已采纳

如文档中所述,您需要添加静态导入才能使用相同的样式编写代码

using static Nest.Infer;

否则,您需要使用简单的new Field(..)实例化

  ask by Jon translate from so

未解决问题?本站智能推荐:

1回复

Elasticsearch:NEST中具有基数的复合聚合

我正在使用复合和术语聚合来获得基于给定字段的分组结果。 我还使用 Cardinality 聚合来获取聚合桶的总数。 以下是我发送的请求查询以获取相应的响应: 请求: 回应: 我使用 Kibana 来检查查询,它对我来说很好用。 但是,我不确定如何在 NEST 对象语法中使用这个基数聚合器。 这是我的
1回复

如何使用NEST获取不同的文档字段列表?

我刚刚开始使用 Elasticsearch,并且正在将 NEST API 用于我的 .Net 应用程序。 我插入了一个索引和一些记录。 我现在正在尝试获取文档字段值的不同列表。 我有这个在邮递员工作。 我不知道如何将 JSON 聚合体移植到 NEST 调用。 这是我试图移植到 NEST C# API
1回复

使用弹性聚合(NEST)时为null_pointer_exception

我想使用弹性(6.2.4)来呈现构面。 构面应显示一个值以及在特定字段中每个值包含此值的文档数(按文档数desc排序)。 根据文档,我认为我需要使用术语聚合。 这是我的代码: 我已经创建了3个文档并建立了索引,并且我希望按名称进行2个聚合(值“ aa”的文档1和2,以及值“ bb
1回复

NEST:从ElasticSearch中的搜索响应(ISearchResponse)获取数据的问题

我使用 NEST 编写了一个 C# 代码,它对我的​​ ES 数据库进行搜索查询。 我可以看到这些查询成功并通过 Postman 给出了一个 json 响应体。 我想在我的代码中使用这些响应。 例如, ISearchResponse<class> myquery = client.Se
1回复

ElasticSearchC#客户端(NEST):使用ES5.5.0获得聚合结果

这是索引代码。 具体而言,城市字段是用于搜索和汇总的多字段。 也使用一些分析仪。 仅城市字段需要汇总。 ..... 我正在这样汇总... 术语。桶始终为空。 如何获取此处城市的汇总值? 我正在使用ES 5.5.0
1回复

如何在Nest中对重要术语聚合使用百分比分数

我正在尝试在 Nest 中重新创建以下聚合 我不知道PercentageScore的函数表达式是什么意思 我可以通过执行p => p来编译它,但它没有正确构建查询并抛出异常 我也尝试过null和new PercentageScoreHeuristicDescriptor() ,但没有成功。
1回复

未知数据类型的Elasticsearch术语聚合

我正在使用动态映射在Elasticsearch中索引未知模式的数据,即我们不提前知道很多数据的形状,数据类型等。 在查询中,我希望能够在任何字段上进行汇总。 字符串( 默认情况下 )同时映射为text和keyword类型,并且只能将后者进行聚合。 因此,对于字符串,我的术语聚合必须如下所示
2回复

在ElasticSearch6中使用过滤器按嵌套对象聚合

我有一组文档代表ElasticSearsh 6中的属性单位。每个属性都有嵌套的每周费率数组: 我正在通过几个选项(包括日期)进行一些过滤。 我需要添加汇总,以使通过过滤器的所有单位之间的每周最低收益和最高每周收益。 我想这应该是带有过滤器的嵌套聚合。 我怎样才能做到这一点?