如何使用Sitecore Solr自定义索引

时间:2015-10-10 09:27:28

标签: indexing solr sitecore

有人可以帮我理解下面的内容吗?

  1. 使用Sitecore solr搜索时,是否需要在代码中指定索引的名称?

  2. 如果我们创建名为“sitecore_web-index_custom”的新自定义索引。我们如何确保在代码中使用此索引?

  3. 谢谢。

1 个答案:

答案 0 :(得分:4)

要获取Sitecore索引,请使用GetIndex类中的ContentSearchManager方法:

Sitecore.ContentSearch.ContentSearchManager.GetIndex(...)

您可以传递索引名称:

// get Sitecore built in index for current database:
string dbName = (Sitecore.Context.ContentDatabase ?? Sitecore.Context.Database).Name;
var index = Sitecore.ContentSearch.ContentSearchManager.GetIndex("sitecore_" + dbName + "_index");

// get custom index
Sitecore.ContentSearch.ContentSearchManager.GetIndex("sitecore_web-index_custom")

或Sitecore项目:

// get index by Sitecore item 
Sitecore.ContentSearch.ContentSearchManager.GetIndex((SitecoreIndexableItem)item);

在第二种情况下,Sitecore将尝试查找项目编入索引的索引。

获取 Solr Lucene 索引之间没有区别 - Sitecore API在这里是透明的。

有关Sitecore搜索和索引的更多信息,请参阅