Что ж, это распространенная проблема, когда вы добавляете строку в другую локаль, отличную от файла strings.xml
по умолчанию, и забываете добавить ее в файл strings.xml
по умолчанию. Поэтому, когда вы находитесь в локали по умолчанию, приложение не сможет увидеть значение, потому что оно не внутри значения по умолчанию strings.xml
Обратите внимание, что даже после перемещения состояния страницы в состояние отображения Вы будете все еще видеть __ элемент Состояния отображения на Ваших страницах.
Кроме того, я полагаю, что это решение может быть более корректным, чем другие предлагаемые, поскольку оно обрабатывает кнопку "Назад" немного более изящно. При хранении ViewState в скрытой переменной это становится частью HTML и поэтому доступно, если пользователь нажимает кнопку "Назад" 2 или 3 страницы и продолжает то, что он делал. Вслепую повреждение Состояния отображения с каждым запросом страницы будет препятствовать тому, чтобы кнопка "Назад" вела себя способ, которым ожидает пользователь.
Однако это было бы небрежно, чтобы отметить, что это - вероятно, не прекрасная идея во-первых. Я предложил бы делать по крайней мере две вещи сначала:
Во-первых, удостоверьтесь, что Вы выключили Состояние отображения на всех средствах управления, для которых не нужно оно (который, вероятно, будет большинством из них). Можно сделать это установкой 'IsViewstateEnabled' ко лжи.
Во-вторых, включите http сжатие на своем веб-сервере. Даже если у Вас есть довольно размерное состояние отображения, общий вес страницы (при сжатии - не, как просматривается в браузере) должно быть относительно маленьким.
Надежда, которая помогает!
Что Вы могли бы видеть в ViewState, скрытым полем является ControlState, который хранится по-другому по сравнению с "нормальным" ViewState.
Чтобы также сохранить ControlState на сессии добавьте следующую запись в web.config файл:
<system.web>
<browserCaps>
<case>
RequiresControlStateInSession=true
</case>
</browserCaps>
</system.web>
Проверьте эту страницу на больше.
Мой ответ, вероятно, не, что Вы хотите, но как последнее прибежище Вам, возможно, придется сделать что-то вроде этого.
Я применил отражательную блокировку, описанную в https://connect.microsoft.com/VisualStudio/feedback/Workaround.aspx? FeedbackID=240686 и созданный мой собственный незавершенный менеджер сеансов и хранил все данные сессии там.
После нахождения разработчика WYSIWYG генерировал плохой HTML, который я переключил на ручную запись всего моего HTML с Ответом. Записать.
Престо больше никаких проблем. Большая работа, но это стоило того.
Править: никакая ярмарка downvoting ниже 0, потому что Вам не нравится идея игнорировать все веб-формы. Когда инструменты не работают на меня, я не использую их. Если инструменты не работают на Вас, и Вы не можете получить их работа, Вы не должны использовать их также.
Важная часть кода
protected override PageStatePersister PageStatePersister
{
get
{
return new SessionPageStatePersister(this);
}
}
Это переопределяет нормальный стойкий организм состояния страницы и обеспечивает тот, который сохраняет данные страницы к Сессии вместо ViewState.