如何使用Lucene.Net创建构面
我正在构建一个C#windows窗体应用程序,用于搜索数据库并显示结果。 我试图找到一个如何用Lucene创建方面的指南,但似乎我不能。 我正在创建索引,我能够搜索数据库,但我想为结果创建构面。 是否有任何指南或项目可供使用?
编辑这里是到目前为止我的项目的链接https://github.com/assignment128A-adopse/Assignment
任何帮助/建议都会有所帮助
有几个选择。
选项1
在Lucene.Net 4.8.0中,您可以使用Lucene.Net.Facet模块来设置分面搜索。 请参阅Lucene API文档 。
选项#2
您可以使用Simple Faceted Search contrib项目,但据我所知,它只为您分组构面并获得它们的计数。 我相信如果您需要实际列出与所选方面匹配的内容,您必须自己构建它。
https://cwiki.apache.org/confluence/display/LUCENENET/Simple+Faceted+Search
选项#3
使用BoboBrowse.Net。 它是一个完整的分面搜索引擎,不仅可以计算分面计数,还可以选择分面以及检索内置排序和分页的匹配列表。 还有许多内置构面类型,例如范围和地理位置。
- 对于Lucene.Net 3.0.3 – ( NuGet页面 , 演示1 , 演示2 )
- 对于Lucene.Net 2.9.4
请注意,虽然演示是在MVC中完成的,但在Windows窗体中进行设置是类似的(实际上更容易,因为当选择更改时,您不需要使用AJAX重新加载结果)。
选项#4
使用SOLR。 它是一个基于服务器的解决方案,可以在Java上运行, 可以设置为进行分面搜索 。
SOLR还有一个.NET客户端 – ( 面向 文档 )