我正在尝试为 FAST 搜索开发一个自定义的 SharePoint 2010 Web 部件。我正在使用Microsoft.Office.Server.Search.Query.KeywordQuery
这样的东西:
var FASTquery = new KeywordQuery(proxy)
{
ResultsProvider = SearchProvider.FASTSearch,
QueryText = queryText,
ResultTypes = ResultType.RelevantResults | ResultType.RefinementResults
};
FASTquery.SelectProperties.AddRange(
new string[] { "Title", /* ..., */ "HitHighlightedSummary" });
ResultTableCollection searchResults = FASTquery.Execute();
我继续绑定searchResults[ResultType.RelevantResults]
到一个Repeater
控件。我正在尝试通过调用来显示“命中突出显示的摘要” FASTquery.HighlightStringValue()
。我传递的值是HitHighlightedSummary
from searchResults
。搜索“ear”时结果的示例如下:
<ddd/>FALSE ); GetDlgItem(IDC_<c0>EAR</c0>_PAIN_STATIC)->EnableWindow<ddd/>FALSE ); GetDlgIte(IDC_<c0>EAR</c0>_PAIN_ABSENT_RADIO<ddd/>FALSE ); GetDlgItem(IDC_<c0>EAR</c0>_PAIN_MILD_RADIO<ddd/>
但是,当使用这样的字符串调用时,FASTquery.HighlightStringValue()
会抛出System.ServiceModel.FaultException
带有“值不在预期范围内”的消息。
将此摘录转换为 HTML 的正确方法是什么,或者我应该HighlightStringValue()
使用其他值调用?该文档不是特别有用。