Упругий поиск - оператор в NEST (поисковый запрос с оператором в виде строки) - PullRequest
0 голосов
/ 17 апреля 2019

У меня есть следующий запрос, написанный на C # и использующий клиент NEST 6.x.

.Should(
    m => m.QueryString(qs => qs
   .Query(searchOptions.SearchTerm)
   .Fields(ff => ff.Fields(fields))
   .DefaultOperator(Operator.And)
   ),

Мне нужно передать параметр оператора в виде строки, но он не принимает строковые значения.Есть ли способ передать оператор в виде строки?

1 Ответ

0 голосов
/ 17 апреля 2019

Вы можете разобрать входную строку в Operator enum в этом коде:

var parsed = Enum.TryParse("or", true, out Operator parsedOperator);

, а затем используйте parsedOperator в дескрипторе запроса, например:

elasticClient.Search<object>(s => s
    .Query(q => q.QueryString(qs => qs.DefaultOperator(parsedOperator))));
...