我正在使用 Lucene.NET 3.0.3 搜索两个字段(我有两个名为“Noidung”、“Dapa”的字段),我BooleanQuery
在 C# 中使用它,但是当我运行此代码时没有返回结果,我确信要搜索的源没有问题,因为我对其进行了测试。那么使用 Lucene.NET 3.0.3 的人可以提供一些解释吗?
IndexReader indexreader = IndexReader.Open(directory, true);
Searcher indexsearch = new IndexSearcher(indexreader);
BooleanQuery bq = new BooleanQuery();
Query q1 = new TermQuery(new Term("Noidung", PhanSoSanh));
Query q2 = new TermQuery(new Term("Dapa", txtText.Text.ToString().Trim()));
bq.Add(q1, Occur.MUST);
bq.Add(q2, Occur.MUST);
TopDocs ketqua = indexsearch.Search(bq, null, 500);
var hits = ketqua.ScoreDocs;
foreach (var hit in hits)
{
// Return result
}
我在索引中有 2 个字段(“Noidung”、“Dapa”)。现在我想在“Noidung”字段中搜索,然后用“Dapa”搜索结果。我使用 booleanQuery 但没有返回结果?帮我?