Почему скрытое поле __VIEWSTATE отображается, даже если для EnableViewState установлено значение false - PullRequest
7 голосов
/ 12 ноября 2008

Я видел, что поле __VIEWSTATE отображается, хотя я установил EnableViewState = "false" на уровне страницы. Это поле не отображается, если я удалю тег runat = "server" для элемента формы. Может кто-нибудь объяснить это?

Ответы [ 2 ]

17 голосов
/ 12 ноября 2008

Поле __VIEWSTATE также используется для хранения состояния управления, что не является обязательным. Кроме того, информация, содержащаяся в состоянии просмотра, используется для проверки обратной передачи, если я не ошибаюсь (и проверка включена, что по умолчанию). Так что, пока у вас есть форма с runat = "server", у вас будет поле viewstate. Тем не менее, вы должны заметить намного меньший размер поля, если вы отключите все viewstate.

0 голосов
/ 07 июля 2009

Совет: В Asp.net, если вам нужно полностью удалить __VIEWSTATE, переопределите метод Page.Render, визуализируйте страницу в строку и удалите из нее текст __VIEWSTATE.

...