Kentico中的页面搜寻器索引未在结果中显示内容

时间:2018-12-02 23:08:41

标签: search indexing kentico

我试图显示页面搜寻器索引的结果,结果很好,但是问题是,当我尝试显示内容值为空时,我在类中使用OnHtmlToPlainText方法来过滤内容。 这是转换的代码

 <div class="content">
        <%#SearchHighlight(HTMLHelper.HTMLEncode(TextHelper.LimitLength(HttpUtility.HtmlDecode(HTMLHelper.StripTags(CMS.Base.Web.UI.ControlsHelper.RemoveDynamicControls(GetSearchedContent(DataHelper.GetNotEmpty(Eval("CONTENT"), ""))), false, true, " ", "@", "")), 280, "...")), "<span style='background-color: #FEFF8F'>", "</span>")%><br />
 </div><!--  content -->

这是后端代码

public class CustomSearchCrawlerModule : CMS.DataEngine.Module
{

    private void OnGetPageContent(object sender, DocumentSearchEventArgs e)
    {

    SearchField sf=new SearchField();
    sf.FieldName = "CONTENT";
    sf.Value = e.Content;

    string content = e.Content;
    e.SearchDocument.AddSearchField(sf);
    }

}

任何建议,请

1 个答案:

答案 0 :(得分:0)

我检查了您的代码以获取模板,对我来说效果很好。无需为内容添加新字段,因为该字段已经存在,除非您在那里有一些自定义逻辑。如果有,也许您应该首先检查该逻辑。这可能导致e.Content已经为空字符串。您也可以尝试使用以下语法:

e.SearchDocument.Add("CONTENT", e.Content, true, true);