Не удается получить доступ к полю элемента sitecore через API

Я добавил новый раздел, содержащий несколько новых полей, в существующий шаблон данных. Поля отображаются правильно при входе в систему под учетной записью обычного пользователя.

Однако при доступе к полям с помощью API item.Fields["FieldName"] всегда возвращает NULL.

Что я пробовал:

  1. Публикация элемента и соответствующего шаблона данных
  2. Предоставление «Всем» явного доступа для чтения к полям (и разделу полей).
  3. Подтверждено, что мой экземпляр dev указывает на правильную базу данных
  4. Отладка показывает, что два моих новых поля отсутствуют в коллекции Fields элемента.

Я также выполнил iisreset, на всякий случай, если что-то где-то закешировалось. Любая помощь приветствуется.


person Bob Black    schedule 17.09.2010    source источник


Ответы (2)


Попробуйте вызвать item.Fields.ReadAll() перед доступом к полю.

person Yan Sklyarenko    schedule 18.09.2010
comment
Это не должно быть необходимым шагом, вы уверены, что это не проблема кэширования? - person nickwesselman; 20.09.2010

Вы публикуете и разрабатываете один и тот же экземпляр sitecore? я видел, как разработчики разочаровывались в этом b/c, который они публикуют, скажем, с сервера разработки, а затем ищут поле в своем локальном ящике разработки, в котором все еще хранится старая копия шаблона в кэше. в этом случае публикация на сервере разработки не очистит локальный кеш.

person nickwesselman    schedule 19.09.2010