我有以下代码段:
QueryParser parser = new MultiFieldQueryParser(Lucene.Net.Util.Version.LUCENE_29, new string[] { Field1, Field2, Field3 }, _analyzer);
parser.SetDefaultOperator(QueryParser.Operator.AND);
Query queryOrig= parser.Parse(queryString);
var query = new BooleanQuery();
query.Add(queryOrig, BooleanClause.Occur.MUST);
if (itemId.HasValue)
query.Add(new TermQuery(new Term("Field3", NumericUtils.IntToPrefixCoded(itemId.Value))), BooleanClause.Occur.MUST);
Hits hits;
if (sortField != null)
{
var sort = new Sort(new SortField(sortField, isDescending));
hits = Searcher.Search(query, null, sort);
}
else
hits = Searcher.Search(query);
这段代码总是返回0次点击,无论如何。 如果我使用没有布尔值的queryOrig进行直接搜索,它可以正常工作。 我很确定数据是正确的。
谢谢, 莱昂纳多
答案 0 :(得分:0)
嗯..这是一个数据问题! :d lucene工作正常。
谢谢, 利奥!