我正在使用以下代码在Lucene.Net中执行查询
var collector = new GroupingHitCollector(searcher.GetIndexReader()); searcher.Search(myQuery, collector); resultsCount = collector.Hits.Count;
如何根据字段对这些搜索结果进行排序?
谢谢你的回答.我曾尝试过使用TopFieldDocCollector
但是"value is too small or too large"
当我5000
作为numHits
参数值传递时,我得到了一个错误说法.请建议通过有效值.
该search.Searcher.search
方法将接受一个search.Sort
参数,该参数可以简单地构造为:
new Sort("my_sort_field")
但是,对哪些字段可以进行排序存在一些限制 - 它们需要被索引但不能被标记化,并且值可以转换为String
s,Float
s或Integer
s.
Lucene in Action涵盖了所有细节,以及按多个字段排序等.