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