0
我寫了一些代碼來刷新索引,當一個項目被以編程方式添加到Sitecore。現在,由於實時系統由1個CM和2個CD服務器組成,因此我需要我的代碼來觸發CD服務器上的索引刷新(不幸的是,我的開發機器只是一個盒子,所以我無法完全測試) 。我在網上查找過,但是在以編程方式觸發重新索引時找不到任何關於此內容的信息。刷新Sitecore索引以包括CD的
所以問題是我需要爲此編寫代碼還是Sitecore默認執行此操作,如果確實需要編寫代碼,是否有人有關於如何執行此操作的想法。我目前的代碼如下。
ISearchIndex index = ContentSearchManager.GetIndex("GeorgeDrexler_web_index");
Sitecore.Data.Database database = Sitecore.Configuration.Factory.GetDatabase("web");
Item item = database.GetItem("/sitecore/content/GeorgeDrexler/Global/Applications");
index.Refresh(new SitecoreIndexableItem(item));
我對指數的配置有remotebuild策略啓用
<strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/remoteRebuild" />
從我的角度來看,不需要在CD服務器上觸發重建索引。一旦用戶添加了一個項目,您就可以將其發佈到目標數據庫(web),然後觸發重建索引。從您提供的代碼中,該項目將始終爲空,因爲該項目已添加到CM Server(主控)上,並且仍然不存在於CD Servers(Web)上 –