ВУЗ:
Составители:
Рубрика:
135
влекаться. Следующий пример позволяет извлечь значение элемента
Name и преобразовать его в строку.
string name;
if (ViewState["Name"]!=null)
name=(string)ViewState["Name"];
Проверка на наличие элемента коллекции необходима, т.к. при об-
ращении к несуществующему элементу коллекции возникает исключе-
ние NullReferenceException.
При работе с состоянием отображения следует учитывать два об-
стоятельства. Во-первых, количество информации, сохраняемой в со-
стояние вида не должно быть большим, т.к. это приводит к увеличению
объема передаваемых данных от сервера к клиенту и наоборот. В случае
необходимости сохранения большого количества данных лучше вос-
пользоваться средствами базы данных, либо использовать состояние се-
анса. Во-вторых, в ViewState нельзя сохранять критично важные данные
(данные, доступ пользователя к которым необходимо запретить), т.к.
они легко могут быть декодированы и прочитаны, более того, опытный
пользователь сможет изменить эти данные при осуществлении запроса
на обратную отправку. В этом случае лучше воспользоваться состояни-
ем сеанса.
Кроме этого ViewState не позволяет сохранять информацию, кото-
рая будет использоваться несколькими страницами. В этом случае луч-
ше воспользоваться состоянием сеанса, объектами куки, либо строкой
запроса.
Для понимания ViewState нужно рассмотреть исходный код, кото-
рый web-приложение отправляет браузеру. Для этого необходимо вы-
звать контекстное меню страницы, отображенной в браузере и выбрать
пункт «Просмотр HTML-кода». Пример текста HTML кода страницы,
отправляемого в ответ на ввод имени и нажатие кнопки показан на рис.
4.4.
Объект Session
Объект Session предназначен для поддержки состояния сеанса ра-
боты пользователя. Он используется для хранения любого типа пользо-
вательских данных, которые необходимо сохранять между последова-
тельностью запросов одного и того же пользователя.
Пользовательские данные при этом сохраняются в формате
«имя=значение». Такой способ, в частности, можно применять при соз-
дании интернет магазина, в котором покупатель перед покупкой скла-
дывает товары в виртуальную корзину, которая после завершения сеан-
Страницы
- « первая
- ‹ предыдущая
- …
- 133
- 134
- 135
- 136
- 137
- …
- следующая ›
- последняя »
