Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 索引Sitecore配置文件卡及其价值_C#_Lucene_Sitecore_Sitecore8 - Fatal编程技术网

C# 索引Sitecore配置文件卡及其价值

C# 索引Sitecore配置文件卡及其价值,c#,lucene,sitecore,sitecore8,C#,Lucene,Sitecore,Sitecore8,我目前正在通过自定义的计算字段对跟踪字段中应用于项目的个人资料卡编制索引。这很好用,我可以根据我搜索的个人资料卡检索结果 但是,我想考虑个人资料卡的值。也就是说,在航空档案卡中带有10的结果项应该比在航空档案卡中带有5的另一个结果更相关 实现这一点的一个明显方法是通过增强,但这需要在索引时间发生,而不是在搜索时间发生 有没有办法根据字段中的值在索引时应用boosting?还是有别的办法 在搜索后,可以选择按配置文件卡值对结果进行排序,但这不是很有效,而是会在索引时增加开销。我会创建一个自定义规则

我目前正在通过自定义的
计算字段
跟踪
字段中应用于项目的
个人资料卡
编制索引。这很好用,我可以根据我搜索的个人资料卡检索结果

但是,我想考虑
个人资料卡的
值。也就是说,在航空
档案卡
中带有10的结果项应该比在航空
档案卡
中带有5的另一个结果更相关

实现这一点的一个明显方法是通过
增强
,但这需要在
索引
时间发生,而不是在
搜索
时间发生

有没有办法根据字段中的值在索引时应用boosting?还是有别的办法


在搜索后,可以选择按配置文件卡值对结果进行排序,但这不是很有效,而是会在索引时增加开销。

我会创建一个自定义规则,根据其配置文件卡的值提升每个索引项

您可以在下面看到创建增强规则的示例:


EDIT:请注意,此方法将对所有索引中的all搜索查询中的项目应用boosting。这实际上适用于所有索引时间方法。因此,您可能还是希望使用查询时间增强功能。

我曾考虑过基于规则的增强功能,但除了创建规则项之外,没有多少资源真正解释如何构建规则。我总是可以反编译现有的代码,以获得一个前几天AI正在处理的想法。我试图使用Lucene子文档,但我不确定这是否有效。同时,也将考沃视为一个可能的选择。我还没有想出一个解决方案,但我正在努力创建一个新的索引,只索引项目、配置文件卡和值。我将把每个概要文件和值作为分隔值推送到单个字段中。这样,我就可以获取我的结果,提取个人资料值并计算排名。我想你和我走的是同一条路。为了帮助你,我想引用我的博客文章,在那里我从追踪器performant获取了个人资料。我曾考虑过在一个字段中使用概要文件id和值,并使用管道分隔符,这是您的博客使用的。你是怎么发现的?感谢您分享此帖子,任何有助于提高性能的内容:)