Elasticsearch с NEST для поиска CommonTerms - недостающие документы - PullRequest
0 голосов
/ 18 октября 2018

Я использую C # с NEST для связи с Elasticsearch.Я пытаюсь найти документы с полем «содержимое» на основе текста, содержащего слова пользователя, например «уникальный тест».Соответствующие результаты могут содержать 1 или несколько из этих слов, и порядок не имеет значения (но чем ближе эти слова друг к другу, в поле «содержимое» документа, тем лучше).

Итак,например, поисковый запрос должен соответствовать этим 3 документам:

{"content": "luctus, unique arcu vel, facilisis test. Praesentalne"}
{"content": "Maecenas lacus velit, very unique eu commo, tincidunt ut"}
{"content": "tempor test. Proin ipsum dui, porttitor vitae commodo mas"}

Это мой запрос:

var searchResponse = await _client.SearchAsync<AuditModel>(s => s
    .Query(q => q
        .CommonTerms(c => c
            .Field(p => p.Content)
            .Analyzer("standard")
            .Boost(1.1)
            .CutoffFrequency(0.001)
            .HighFrequencyOperator(Operator.And)
            .LowFrequencyOperator(Operator.Or)
            .MinimumShouldMatch(1)
            .Name("content")
            .Query(model.Content))));

Проблема в том, что этот поисковый запрос возвращает только:

{"content": "luctus, unique arcu vel, facilisis test. Praesentalne"}

Это единственный результат, в котором есть оба слова, поэтому мне нужно, чтобы это было более высоким приоритетом, чем у других 2, но я бы хотел включить все 3, если это возможно.

Возможно ли это с NEST?Спасибо

...