我们总是在意义上创建弹性搜索查询,然后在NEST中创建相应的版本。
使用NEST客户端有什么好处,而不是直接使用JSON弹性搜索查询来获取搜索文档?
答案 0 :(得分:2)
以下是您可能选择使用NEST(Elasticsearch的高级客户端)的原因的非详尽列表:
BulkAll
,ScrollAll
,Reindex
IConnection
,IRequestPipeline
,IElasticsearchSerializer
等答案 1 :(得分:0)
使用像NEST这样的强类型库有两个主要原因。
1。它可以防止您尝试大多数无效请求
一开始,DSL会让人感到笨拙,但是一旦您习惯了DSL,就会意识到它的严格结构阻止您以无效的方式将过滤器和聚合链接在一起。这意味着在编写代码并准备对其进行修复时,可以捕获错误,而不必在以后的生产中使用。
#2为诸如Visual Studio和Code的IDE提供完成代码所需的一切
就像Kibana可以帮助您在开发工具中编写Elasticsearch查询一样,您的IDE可以提供语法突出显示和代码完成功能,从而可以节省您在文档或Kibana上来回运行的时间。当您动态构建查询时,这真的很有用。
来源:我最近在the benefits of using a strongly-typed library like NEST for generating Elasticsearch queries
上写了一个有关此的博客