Проектирование Интернет приложений. Тузовский А.Ф. - 134 стр.

UptoLike

Составители: 

134
HTTP ответе web-приложения (скрытое поле __VIEWSTATE) и возвра-
щаются опять web-приложению в HTTP запросе браузера.
Для сохранения введенных пользователем в web-форму данных,
чтобы ими можно было пользоваться в других web-формах одного и то-
ге же приложения, их необходимо сохранить в объектах с более гло-
бальной областью видимости, таких, как: Application и Session. Перемен-
ные состояния Application доступны всем пользователям данного web
приложения и могут рассматриваться как глобальные переменные, об-
ращение к которым возможно из любых сеансов. Переменные состоя-
ния Session доступны только в рамках одного сеанса, следствием чего
является то, что они оказываются доступными только одному пользова-
телю.
В переменных состояния можно хранить данные любого типа. В
силу того, что переменные состояния являются фактически глобальны-
ми переменными, для работы с ними, желательно выработать стратегию
их использования в приложении.
Сохранение состояния web-формы
Прежде всего, необходимо рассмотреть возможность использова-
ния состояния вида (ViewState). Его целесообразно использовать в том
случае, когда необходимо организовать хранение данных в пределах
одной страницы. Все элементы управления используют состояние вида
по умолчанию для сохранения значений свойств между операциями об-
ратной отправки данных. Здесь же возможно организовать хранение
своих собственных данных, состоящих из простых типов и специальных
объектов.
Состояние отобажения реализовано с помощью коллекции, которая
яляется словарем. Это означает, что данные хранятся в формате имя-
значение. Каждый элемент, при этом индексируется с помощью уни-
кального строкового имени. Следующий пример добавляет в коллекцию
ViewState элемент с именем Name и присваивает ему значение Иван”.
ViewState["Name"]="Иван";
При этом, если в коллекции до этого не существовало элемента с
именем Name, то он добавляется, если же такой элемент был, его значе-
ние заменяется новым.
Для извлечения элемента из коллекции необходимо использовать
имя элемента. Кроме того, т.к. коллекция ViewState позволяет сохранять
данные состоящие не только из простых типов, но и специальные объ-
екты общем случае любые объекты), во время извлечения значения
элемента, необходимо преобразовать его тип к тому, который будет из-