Значение стандартных значений правильное в CE, но пустое в коде

Если я устанавливаю значение поля в стандартных значениях базового шаблона, стандартное значение отображается в этом поле в редакторе контента (и в Rocks), однако, когда я ссылаюсь на это поле по идентификатору в коде

Html.Sitecore().Field(ID, Item);

// ЕД. У меня есть вспомогательный метод, который выполняет проверку ошибок, называемый GetField(), моя ошибка. Чтобы добавить больше ясности: это работает правильно, если я захожу в CE и говорю, что добавляю символ в конец значения и нажимаю сохранить. (переопределение стандартных значений)

Возвращаемое значение равно нулю.

Это касается как новых элементов, созданных после изменения стандартных значений, так и текущих элементов.


person Bryce Sharp    schedule 07.04.2017    source источник
comment
Только что столкнулся с этой проблемой прямо сейчас, собираюсь копнуть глубже, но я думаю, что это может быть ошибка Sitecore. Можете ли вы сказать мне версию Sitecore, в которой вы столкнулись с этой ошибкой?   -  person seekingtheoptimal    schedule 06.07.2017


Ответы (2)


Попробуйте: .Field() вместо .GetField()

Как в Html.Sitecore().Field(ID, Item);

person floriano76    schedule 07.04.2017
comment
На самом деле я использую Field, набрал имя вспомогательного поля, которое проверяет значение null. - person Bryce Sharp; 07.04.2017

Я думаю, что здесь решена проблема, хотя это похоже на ошибку Sitecore в отношении резервного элемента и полей, которые наследуют свое значение от стандартных значений: Отказ от языка не работает для полей со стандартными значениями (Sitecore 8.1)

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

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

person seekingtheoptimal    schedule 06.07.2017