Страница представлена классом System.Web.UI.Page
Классы кода всех страниц производные от Page
Этапы обработки web-форм
- Запрос страницы. (Page Request)
- Старт (подготовка свойств страницы). (Start)
- Инициализация. (Initialization)
- Загрузка. (Load)
- Обработка обратного запроса. (PostBack Event Handling)
- Визуализация. (Rendering)
- Очистка. (Unload)
События класса Page
- PreInit
- Init
- InitComplete
- PreLoad
- Load
- LoadComplete
- PreRender
- PreRenderComplete
- SaveStateComplete
- Unload
Инициализация структуры страницы:
PreInit
PreInit — происходит на ранней стадии жизненного цикла страницы. После события PreInit, загружается информация о персонализации и тема страницы, если она имеется.
Используется для:
- Установки мастер страницы.
- Установки темы страницы.
- Динамическое создание элементов управления на странице.
Init
Init — Происходит при инициализации серверного элемента управления или страницы, который находится на первом этапе его жизненного цикла. На данном этапе ViewState страницы еще не загружен.
Используется для:
- Инициализации элементов управления.
InitComplete
InitComplete – происходит при завершении инициализации. На этом этапе ViewState доступен, но данные еще не прочтены элементами управления.
Используется для:
- Действий требующих полной инициализации элементов управления.
Загрузка страницы
PreLoad
PreLoad – происходит после обработки всех данных полученных от
пользователя и до того как запуститься событие Load страницы.
Используется для:
- Для выполнения действий в пользовательских элементах управления (UserControl) до того как сработает событие Load у страницы. Событие Load пользовательского элемента управления срабатывает позже чем Load страницы.
Load
Load – событие указывает на то что все элементы управления готовы к работе.
Используется для:
- Чтения и инициализации свойств страницы и элементов управления.
- Создания подключений к базе данных.
- Для выполнения действий, которые повторяются при каждом запросе к странице.
LoadComplete
LoadComplete– Происходит в конце этапа загрузки страницы. Данное событие происходит после того, как сработает обработчик серверного элемента управления.
Используется для:
- Операций требующих завершения всех обработчиков событий.
Отрисовка
PreRender
PreRender – Событие происходит перед тем как элементы управления будут преобразованы в HTML разметку.
Используется для:
- Обновлений элементов и ViewState перед визуализацией.
PreRenderComplete
PreRenderComplete– Событие происходит перед тем как элементы управления будут преобразованы в HTML разметку. Это последнее событие, которое происходит перед тем как будет сохранен ViewState.
Используется для:
- Используется при разработке асинхронных страниц.
SaveStateComplete
SaveStateComplete– Завершение сохранение ViewState.
Очистка
Unload
Unload – происходит при очистке объекта и выгрузки его из оперативной памяти.
Используется для:
- Освобождения ресурсов. Например: закрытие подключений к базам данных, файловых дескрипторов и т.д.
Все веб формы являются экземплярами класса System.Web.Ui.Page.
Основные свойства класса Page.
- Session
- Application
- Cache
- Request
- Response
- Server
- User
- Trace
Request – экземпляр класса System.Web.HttpRequest. Этот объект представляет свойства и значения HTTP запроса, вызвавшие загрузку страницы.
Response – экземпляр класса System.Web.HttpResponse. представляющий ответ сервера на запрос клиента.
Server – экземпляр класса System.Web.HttpServerUtility. Этот класс предоставляет разнообразные вспомогательные методы и свойства.
QueryString (свойство объекта HttpRequest) – Представляет параметры, переданные в строке запроса.
Form (свойство объекта HttpRequest) – Представляет коллекцию переменных формы, обратно отправляемых на страницу. В большинстве случаев данная информация извлекается из свойств элементов управления вместо использования данной коллекции.
Кодирование HTML и URL. Класс HttpServerUtility (свойство Server страницы) предоставляет методы для преобразования обычных строк в представления, которые безопасно можно использовать в адресной строке или выводить в тело документа.