Что означает это ASP viewstate? - PullRequest
3 голосов
/ 16 мая 2011

Я очищаю веб-форму asp.net, и она всегда отправляет данные о состоянии следующим образом:

<input type="hidden" name="__VIEWSTATE" value="/wEXAQUDX19QDwUNZnJtQ291cnNlSW5mbw8GblQKzmHhzYgCAw==">

Когда я декодирую его в декодере View State , я получаю этот объект: System.Collections.Hashtable.

Точное значение __VIEWSTATE варьируется, но оно всегда декодируется в объект System.Collections.Hashtable.

Что здесь происходит? Почему значение viewstate изменяется, но всегда декодируется к этому?

1 Ответ

1 голос
/ 16 мая 2011

Страница не имеет состояния и поэтому после каждой обратной передачи не имеет представления о том, что происходило раньше. ViewState часто используется для сохранения информации между постбэками. Например, если вы выбрали опцию и создали обратную передачу, сайт может сохранить ваш вариант во ViewState, чтобы ваш вариант все еще был выбран после обратной передачи.

То, что вы видите, - это ViewState, хранящий информацию о том, какие элементы управления в данный момент отображаются на сайте (в данном случае это Hashtable). Значения, хранящиеся в таблице, могут различаться, но элемент управления, похоже, присутствует между постбеками.

Вы можете узнать больше о ViewStates на MSDN и как / когда их использовать здесь .

...