使用NEST C#客户端搜索ElasticSearch

我开始四处寻找搜索引擎,经过一番阅读后,我决定使用ElasticSearch(这是非常了不起的:)),我的项目在C#中,所以我四处寻找客户端并开始使用NEST,一切都很简单,但是我搜索部分有些混乱。

我想搜索 ,然后 以下代码:

elasticClient.Search<NewType>(s => s.Query(q => q.QueryString(d => d.Query(queryString))));

我看到许多字符串查询搜索已被弃用,并想确保上面的方法是正确的方式(上面未标记为已弃用…)对于一个简单的任务来说也有点长,所以也许有人知道另一种方法。

谢谢

回答:

我只使用字符串查询版本:使用C#匿名类型创建查询对象并将其序列化为JSON。

这样,我就可以直接从所有JSON查询示例中进行映射,而无需转换为该“查询DSL”。

Elasticsearch本身发展非常迅速,因此该查询DSL必然缺少某些功能。

编辑:示例:

var query = "blabla";

var q = new

{

query = new

{

text = new

{

_all= query

}

},

from = (page-1)*pageSize,

size=pageSize

};

var qJson = JsonConvert.SerializeObject(q);

var hits = _elasticClient.Search<SearchItem>(qJson);

以上是 使用NEST C#客户端搜索ElasticSearch 的全部内容, 来源链接: utcz.com/qa/416053.html

回到顶部