Sitecore 7 Lucene:从计算字段中剥离HTML

Sitecore 7 Lucene:从计算字段中剥离HTML,lucene,sitecore,sitecore7,Lucene,Sitecore,Sitecore7,我正在将计算字段中“文章”节点的所有“段落”子节点粘贴在一起。这是为了实现一篇文章可以通过其段落内容进行搜索和查找 为了实现这一点,我在节点下执行了以下操作: <field fieldName="Paragraphs" storageType="YES" indexType="TOKENIZED"> MyWebsite.ComputedFields.Paragraphs,MyWebsite </field> 关于如何实现这一点的任何其他线索(通过配置,而不是使用

我正在将计算字段中“文章”节点的所有“段落”子节点粘贴在一起。这是为了实现一篇文章可以通过其段落内容进行搜索和查找

为了实现这一点,我在
节点下执行了以下操作:

<field fieldName="Paragraphs" storageType="YES" indexType="TOKENIZED">
    MyWebsite.ComputedFields.Paragraphs,MyWebsite
</field>

关于如何实现这一点的任何其他线索(通过配置,而不是使用HTML agility pack等)

问题在于
mapFieldByFieldName
希望将Sitecore项中的字段与该名称匹配,而不是索引中的自定义计算字段,因此永远不会调用字段读取器

我不知道如何从配置中实现这一点,但如果您不想直接使用HAP,但愿意使用一些代码,那么在将字段粘贴到computed field类中后,只需执行Sitecore在
GetPlainText()方法中所做的操作即可:

string input = "concatenated string";
return HttpUtility.HtmlDecode(Regex.Replace(input, "<[^>]*>", string.Empty));
string input=“串联字符串”;
返回HttpUtility.HtmlDecode(Regex.Replace(输入“]*>”,string.Empty));

或者使用util方法
Sitecore.StringUtil.RemoveTags(text)

是的,我直接调用了
GetPlainText()
new-HtmlField(x.Fields[“Body”]).GetPlainText()
string input = "concatenated string";
return HttpUtility.HtmlDecode(Regex.Replace(input, "<[^>]*>", string.Empty));