В одной статье, которую я читал на ViewState, я увидел предложение, в котором говорилось, что я не должен ошибаться, полагая, что значение TextBox хранится во ViewState; хранится в данных PostBack.
Отсюда я понимаю, что когда я отправляю обратно веб-форму, значения элементов управления вводом сохраняются в теле HTTP-запроса. Не в Viewstate. Но, насколько я знаю, значения ViewState хранятся в скрытом поле с именем __VIEWSTATE в любом случае.
Значит ли это, что значение __VIEVSTATE не публикуется в теле запроса HTTP POST в качестве данных обратной передачи? Звучит для меня чепуха.
Другими словами, если я скажу, что механизм ViewState для такого scenerio работает следующим образом, я правильно понимаю или что-то пропускаю:
Вы вводите значение в пустое поле TextBox и отправляете страницу
Значение текстового поля отправляется обратно в тело POST HTTP-запроса. Ничего внутри __VIEWSTATE на данный момент из TextBox
На стороне сервера TextBox создается со значением по умолчанию для метода OnInit страницы
Свойство TrackChange ViewState имеет значение true.
Загруженные данные обратно TextBox загружены. Поскольку оно отличается от значения по умолчанию для TextBox (потому что пользователь что-то ввел), ViewState этого текстового поля помечается как DIRTY.
Новое значение текстового поля записывается в скрытое поле __VIEWSTATE
С этого момента __VIEWSTATE hiddenfeild содержит последнее заданное значение TextBox
Страница отправляется в браузер пользователя со скрытым полем __VIEWSTATE. Но на этот раз содержит последнее введенное пользователем значение, которое будет готово к обработке
Спасибо, ребята!
Бурак Оздоган