Highlighter.net не возвращает ни одного совпадения

Я использую lucene.net 2.9.4 и lucene.net contrib 2.9.4 мой запрос lucene выглядит так:

+contents:umbraco*

Я получаю результаты по этому запросу. Мой код для выделения фрагментов выглядит так:

public string GetHighlight(string value, string highlightField, IndexSearcher searcher, string luceneRawQuery)
    {
        var query = GetQueryParser(highlightField).Parse(luceneRawQuery);

        var scorer = new QueryScorer(searcher.Rewrite(query));

        var highlighter = new Highlighter(HighlightFormatter, scorer);

        var tokenStream = HighlightAnalyzer.TokenStream(highlightField, new StringReader(value));

        return highlighter.GetBestFragments(tokenStream, value, MaxNumHighlights, Separator);
    }

В моем объекте бомбардировок свойство termToFind равно 0, и я ожидаю, что он будет хотя бы один? Кто-нибудь какие-либо идеи или предложения о том, как исправить / отладить?

С уважением

Ismail

1 ответ

Хорошо, понял, что я передал неправильные значения в функцию подсветки. Я передавал поисковый запрос и название поля. То, что мне нужно было передать, это содержимое поля содержимого для каждого совпадения документа и условия запроса. Все работает сейчас.

Другие вопросы по тегам