Создание лямбда-выражения для Query DSL с оператором AND в Nest C# (эластичный поиск)

У меня есть запрос DSL

{"query":
{
  "match" : {
    "_all" : {
        "query" : "elastic search document",
        "operator" : "and"
     }
  }
 }
}

Преобразовал его в лямбда-выражение, но понятия не имел, где дать оператор AND в запросе.

 var queryResult = this.client.Search<dynamic>(d =>
             d.AllIndices()
             .AllTypes().Query(q => q.Match(m=>m.Query(queryTerm))));

1 ответ

Вы можете найти это на MatchQueryDescriptor<T> (m параметр в лямбда передается Match())

var queryResult = client.Search<dynamic>(d => d
    .AllIndices()
    .AllTypes()
    .Query(q => q
        .Match(m => m
            .Query(queryTerm)
            .Operator(Operator.And)
        )
    )
);
Другие вопросы по тегам