如何用C#对Lucene.net中的结果进行排序?

发布于 2024-11-17 04:50:15 字数 161 浏览 0 评论 0原文

我正在向 lucene 添加特殊枚举以进行相关搜索。我如何对具有特定枚举值的结果进行排序。

假设我添加了“Poor Medium Best”,并且我需要首先获得最好的结果,然后我如何在 Lucene.net 中做到这一点。

有什么方法可以在 Lucene.net 中做到这一点

i am adding special enum to lucene for relevant the search. how i can sort the result who have a specific enum value.

suppose i add Poor moderate Best and i need to get best first in result then how i can do this in Lucene.net.

any way to do this in Lucene.net

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

半仙 2024-11-24 04:50:15

Lucene 确实有自己的排序。查看命名空间 Lucene.Net.Search.Sort。下面是我按 DateOfMessage 排序的示例。

Lucene.Net.Search.TopDocsCollector collector = Lucene.Net.Search.TopScoreDocCollector.create(InternalMaxSearchResults, false); // default is relevance
var sortBy = new Lucene.Net.Search.Sort(new Lucene.Net.Search.SortField(SearchIndex.IndexFields.DateOfMessage.ToString(), Lucene.Net.Search.SortField.LONG, true));
collector = Lucene.Net.Search.TopFieldCollector.create(
    sortBy,
    InternalMaxSearchResults,   /* max 500 results */
    false,
    false,
    false,
    false);
    break;

// search with the collector
searcher.Search(queryMain, collector);

Lucene does have its own Sort. Look at the Namespace Lucene.Net.Search.Sort. Below is an example where I am sorting by DateOfMessage.

Lucene.Net.Search.TopDocsCollector collector = Lucene.Net.Search.TopScoreDocCollector.create(InternalMaxSearchResults, false); // default is relevance
var sortBy = new Lucene.Net.Search.Sort(new Lucene.Net.Search.SortField(SearchIndex.IndexFields.DateOfMessage.ToString(), Lucene.Net.Search.SortField.LONG, true));
collector = Lucene.Net.Search.TopFieldCollector.create(
    sortBy,
    InternalMaxSearchResults,   /* max 500 results */
    false,
    false,
    false,
    false);
    break;

// search with the collector
searcher.Search(queryMain, collector);
生来就爱笑 2024-11-24 04:50:15

您可以使用“SimpleFacetedSearch”将结果分类为差、中等、最佳
https://cwiki.apache.org/confluence/display/LUCENENET/Simple +分面+搜索

You can use "SimpleFacetedSearch" to categorize the results as poor, moderate, best
https://cwiki.apache.org/confluence/display/LUCENENET/Simple+Faceted+Search

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文