Теперь, когда вы исследовали жизненный цикл страницы и узнали, каким образом в ней хранятся элементы управления, следует отметить, что сама страница также создается как экземпляр объекта элемента управления. В действительности все Web-формы являются экземплярами класса ASP.NET Page, который можно найти в пространстве имен System.Web.UI.
Вы наверняка уже обнаружили это, заметив, что каждый класс скрытого кода явно порожден от System.Web.UI.Page. Это означает, что каждая создаваемая вами Web-форма снабжается огромным количеством новых функций. Статический метод FindControl() и свойство IsPostBack — два примера, с которыми вы уже ознакомились. Более того, порождение от класса Page предоставляет доступ к следующим исключительно полезным свойствам:
Многие из этих свойств соответствуют внутренним объектам, используемым на классических Web-страницах ASP. Однако в классической ASP вы получали доступ к этой функциональности с помощью встроенных объектов, доступных в любое время. В ASP.NET каждый из этих, встроенных объектов в действительности соответствует свойству Page, которые представляет собой экземпляр полнофункционального класса.
Эти объекты рассматриваются в следующих разделах.
Объект Session является экземпляром класса System.Web.SessionState.HttpSessionState. Он предназначен для хранения любого типа пользовательских данных, который должен постоянно существовать между запросами Web-страниц. Объект Session предоставляет словарный доступ к набору пар имя-значение, представляющий пользовательские данные для этого сеанса. Состояние сеанса часто применяется для обслуживания информации наподобие имени и идентификатора пользователя, покупательской корзины либо других элементов, удаляемых, когда пользователь уже не посещает страницы Web-сайта.
Объект Application является экземпляром класса System.Web.HttpApplicationState. Как и объект Session, это также словарь данных имя-значение. Однако эти данные глобальны для всего приложения.
Наконец, объект Cache является экземпляром класса System.Web.Caching.Cache. В нем также хранится глобальная информация, но он предоставляет более масштабируемыи механизм хранения, поскольку ASP.NET может удалять объекты в случае нехватки памяти сервера. Как и другие наборы состояний, это по сути, коллекция объектов имя-значение, однако здесь для каждого элемента можно также устанавливать специализированные политики истечения срока и определять зависимости.
предыдущая следующая страница оглавление
132