从sitecore项检索字段名称

时间:2011-02-09 13:15:20

标签: sitecore

当我使用sitecore.seach在sitecore中搜索关键字时,它会返回搜索关键字的项目名称(它所在的位置)。是否有任何选项可以在项目中获取字段名称?

我使用以下代码:

using (IndexSearchContext context = searchIndex.CreateSearchContext())
{
   SearchHits hits = context.Search(searchString, new SearchContext(SiteRoot));
   var results = hits.FetchResults(0, 100);

   foreach (SearchResult result in results)
   {
      try
      {
         Item item = result.GetObject<Item>();
         if (item != null)
         {
            results.AddResultToCategory(result, categoryName);
         }
      }
      ...
   }
}

1 个答案:

答案 0 :(得分:1)

如果我理解你的目标,你想找出找到搜索字符串的确切字段(字段名称),对吗?

如果是这种情况,那么你应该得到一个项目字段集合(item.Fields),并通过它迭代检查字段值中的搜索字符串。

据我所知,Sitecore Search shell应用程序在显示结果时的工作方式相同:该项目来自SearchResult,而字段集合只是使用简单的{{1来迭代查找命中比较。

我不知道有什么不同的方法可以做到这一点。