2

我们正在尝试以原始格式通过 NEST 传递聚合:

{
"query": {
    "filtered": {
        "query": {
            "multi_match": {
                "query": "main",
                "type": "cross_fields",
                "fields": [
                    "field1",
                    "field2^5",
                ],
                "operator": "and"
            }
        }
    }
},
"aggregations": {
    "multiselectTerms": {
        "terms": {
            "field": "field1.raw",
            "order": {
                "_count": "desc"
            }
        }
    }
}

}

但是当我们在 NEST 中传递上面的 JSON 时,我们没有得到结果。有人可以提供一些输入,我们如何在 NEST 中传递聚合。

var uri = new Uri(ConfigurationManager.AppSettings["ELASTICSEARCH_SERVER"]);
        var settings = new ConnectionSettings(uri, defaultIndex: ConfigurationManager.AppSettings["indexName"]);
        settings.EnableTrace(true);
        var client = new ElasticClient(settings);
        var resp=client.Search<dynamic>(q =>
            q.Type("mappingType").QueryRaw(reqObj["query"].ToString()).From(Convert.ToInt32(((JValue)reqObj["from"]))).Size(Convert.ToInt32(((JValue)reqObj["size"])))
            );

作为回应,我们没有得到聚合和命中的数据。

4

0 回答 0