我目前在自定义搜索结果模块中包含以下代码,以获取DNN搜索结果以及来自我们自己系统的结果。
如何从C#用HTML显示这些对象结果?
当前,我们的搜索结果模块仅通过ajax从我们的ERP系统中检索产品,并以网格模式显示它们。现在,我想在DNN本身的这些Grid结果的顶部显示页面搜索结果,因此这些将是页面上的关键字。
我在玩以下内容,但我认为我做得不正确:searchResults.Results [0] .Desciption?
我找不到例子
答案 0 :(得分:0)
我已经使用了foreach函数来实现我想做的事情:
txtSearchQueryString.Text = GetQuery;
var query = new SearchQuery
{
PageSize = 50,
PageIndex = (1 > 0 ? 1 : 1),
SortField = SortFields.Relevance,
SortDirection = SortDirections.Descending,
KeyWords = GetQuery,
PortalIds = new List<int> { PortalSettings.PortalId },
WildCardSearch = false,
};
TotalPageResults = "0";
var searchResults = SearchController.Instance.ModuleSearch(query);
if(searchResults != null)
{
TotalPageResults = searchResults.TotalHits.ToString();
var sb = new StringBuilder();
sb.AppendLine("<div class='page_results'><span class='page_results_text'>Page Results:</span></br>");
foreach(var result in searchResults.Results)
{
sb.AppendLine($"</br><span><a href='{result.Url}' class='page_results_link'>{result.Title}</a></span></br><span class='page_result_description'>{result.Description}</span></br><span class='page_results_date_modified'>Updated:{result.DisplayModifiedTime}</span></br>");
}
sb.AppendLine("</div>");
DNNSearchResuls = sb.ToString();
}