2015-04-16 5 views
1

добавить файлы ComputedIndexFields.config со следующим кодом:Простой Sitecore включаемый файл пошло не так (ComputedIndexFields.config)

<?xml version="1.0" encoding="utf-8" ?> 
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/"> 
    <sitecore> 
    <contentSearch> 
     <configuration> 
     <defaultIndexConfiguration> 
      <fields hint="raw:AddComputedIndexField"> 
      <field fieldName="AppliedThemes" storageType="yes" indexType="TOKENIZED">be.extensions.AppliedThemes, be.extensions</field> 
      </fields> 
     </defaultIndexConfiguration> 
     </configuration> 
    </contentSearch> 
    </sitecore> 
</configuration> 

Я также добавил класс в указанном assemlby:

namespace be.extensions 
{ 
    class AppliedThemes : IComputedIndexField 
    { 

     public string FieldName { get; set; } 
     public string ReturnType { get; set; } 

     public object ComputeFieldValue(IIndexable indexable) 
     { 
     Item item = indexable as SitecoreIndexableItem; 
     if (item == null) 
      return null; 

     var themes = item["Themes"]; 
     if (themes == null) 
      return null; 

     // TODO 
     } 
    } 
} 

Это является самым простым добавлением вычисленного поля индекса. Тем не менее, когда я добавляю эти 2 файла (код в файле класса никогда не был достигнут), я получаю следующую ошибку при открытии редактора содержимого:

SearchConfiguration настроен неправильно. ContentSearchConfiguration ожидалось, но System.String был возвращен.

Без этого простого конфигурационного файла все работает нормально.

Кто-нибудь видит, что я сделал не так, или знаю, что я могу попытаться исправить это?

EDIT: Я использую Sitecore 8 Update 2

+0

Что Sitecore версию вы используете? –

+0

Sitecore 8 Update 2 – Timon

+0

Просмотрели ли вы страницу /sitecore/admin/showconfig.aspx, чтобы убедиться, что исправление работает правильно? –

ответ

4

Я думаю, что ваш файл заплатки должен привести к следующему XPath

/sitecore/contentSearch/indexConfigurations/defaultLuceneIndexConfiguration/fields 

Так что-то вроде этого:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/"> 
    <sitecore> 
    <contentSearch> 
     <indexConfigurations> 
     <defaultLuceneIndexConfiguration> 
      <fields hint="raw:AddComputedIndexField"> 
      <field fieldName="AppliedThemes">be.extensions.AppliedThemes, be.extensions</field> 
      </fields> 
     </defaultLuceneIndexConfiguration> 
     </indexConfigurations> 
    </contentSearch> 
    </sitecore> 
</configuration> 
+0

Это сделало трюк. Я изменил «конфигурацию» на «indexConfigurations», и теперь он работает, спасибо! Изменилось ли это с sitecore 8? потому что каждый гид мог найти «конфигурацию». – Timon

+0

В настоящее время я работаю с версией 7.2, и это то же самое ... Возможно, это было то, что вы изначально использовали в более ранней версии 7 –

+0

Не могли бы вы узнать, когда я вызываю этот код? Я добавил точку останова и перестроил индекс нескольких элементов, но никогда не попадал в точку останова. – Timon

 Смежные вопросы

  • Нет связанных вопросов^_^