私はこのelasticsearchクエリを持っています。これはローフォーマットで完璧に機能し、C#NEST句に変換するのに問題があります。Elasticsearch複数の必須句を含むネストクエリブールフィルタ
これは、生のクエリです:
{
"query":{
"constant_score":{
"filter":{
"bool":{
"must":{
"term":{
"ingredients":"baking"
}
},
"must":{
"term":{
"ingredients":"soda"
}
}
}
}
}
}
}
そして、これは私がC#のNESTに働くだろうと思ったものです:ユーザーはx値の配列を送信することができます
public List<Recipe> FindByMultipleValues(string field, string[] values) {
List<string> vals = values.ToList();
return client.Search<Recipe>(s => s
.Query(q => q
.Bool(fq => fq
.Filter(f => f
.Term(rec => rec.Ingredients, vals)
)
)
)
).Documents.ToList();
}
、のためにあることを意味このような
"must":{
"term":{
"ingredients":"soda"
}
}
'bool'クエリの' must'節は配列です。私は、2番目の 'must'節プロパティが最初のものを上書きすることになると思われます。 NESTのどのバージョンを使用していますか? –
最新バージョンを使用しています。 2.3.xだと思います。 – McBoman