【发布时间】:2016-07-27 02:14:28
【问题描述】:
我们正在从 1.6.2 -> 2.3.3 升级 ElasticSearch 和 NEST。
什么取代了我们在 2.3.3 中的 TermsExecution.And 方式?
对于需要匹配的未知数量的术语,如何轻松做到这一点?例如在你能够传入一个数组之前。
【问题讨论】:
标签: elasticsearch nest elasticsearch-net
我们正在从 1.6.2 -> 2.3.3 升级 ElasticSearch 和 NEST。
什么取代了我们在 2.3.3 中的 TermsExecution.And 方式?
对于需要匹配的未知数量的术语,如何轻松做到这一点?例如在你能够传入一个数组之前。
【问题讨论】:
标签: elasticsearch nest elasticsearch-net
terms 查询上的TermsExecution.And 应与must(或filter,取决于查询/过滤器上下文)查询的结合转换为bool 查询,每个查询都是@987654326 @查询单个值。
例如,
client.Search<dynamic>(s => s
.Query(q => +q
.Term("field", "value1")
&& +q
.Term("field", "value2")
)
);
产量
{
"query": {
"bool": {
"filter": [
{
"term": {
"field": {
"value": "value1"
}
}
},
{
"term": {
"field": {
"value": "value2"
}
}
}
]
}
}
}
【讨论】: