1

我是 Lucene.NET 的新手,并且已经遇到了一个(我认为)难题。我有一个对象,可以说是“公司”,现在有 3 种不同类型的公司按重要性从低到高排序。

如果我查询搜索词,我想为具有高度重要性的公司提供“提升”因素,例如(伪代码):

[Boost("If Importance is = 1 then 1, If Importance is 2 then 2, If Importance is 3 then 3")] public int Importance {get;set;}

希望你明白我的意思,谢谢!

4

2 回答 2

0

这里有2个单独的问题。如果您需要拆分公司,以便在使用 google 时看到的前几件事有“付费”链接,那么您需要有一个单独的字段并将这些人单独拉出来。

要传入 boost,只需使用 Document.SetBoost() 方法传入要索引的设置。如果您可以发布一些代码,我们可能会得到更好的答案。

于 2011-03-08T14:11:42.493 回答
0

尝试将重要性存储为一个字段,并按该字段对搜索结果进行排序。

Lucene In Action中的第 5.2.4 节涵盖了这一点。

您也可以尝试查看函数查询(第 5.7 节)

于 2011-03-04T02:19:26.827 回答