Полное отключение ViewState в веб-формах ASP.NET - PullRequest
2 голосов
/ 07 марта 2012

В веб-приложении ASP.NET 4 Web Forms я хочу полностью отключить ViewState для элемента управления TextBox. Я искал в интернете, но не смог найти ответ, который решил бы мою проблему.

До сих пор я пытался установить директиву Page следующим образом:

EnableEventValidation="false" ViewStateMode="Disabled" EnableViewState="false"

Я также установил TextBox элемент управления следующим образом:

ViewStateMode="Disabled" EnableViewState="false"

Обычно этих двух настроек должно быть достаточно для отключения ViewState, но это не так.

Затем я написал следующее в файле с выделенным кодом страницы:

protected override void SavePageStateToPersistenceMedium(object state) { }

protected override object LoadPageStateFromPersistenceMedium()
{
    return null;
}

В результате значение ViewState в HTML стало нулевым, но когда я нажимаю кнопку отправки, значение в TextBox все еще запоминается браузером.

Как отключить эту функцию?

1 Ответ

4 голосов
/ 07 марта 2012

Вы неправильно понимаете, как используется ViewState.

См. эту статью для полного объяснения.Цитата:

ViewState не отвечает за заполнение значений, которые публикуются, например, элементами управления TextBox (хотя это играет важную роль)

...