Ключевым (базисным) пространством имен для Web-форм и Web-служб является пространство имен System: :Web (Система::Сеть). Поддержка Web-форм реализована в пространстве имен System: :Web: :UI (Система::Сеть::Пользовательский интерфейс). Поддержка элементов управления сервера, например текстовых полей и кнопок, реализована в пространстве имен System: :Web: :UI: :WebControls (Система::Сеть:: Пользовательский интерфейс:^еЬСоп1го1$). Выходная . aspx-страница динамически генерируется классом Page (Страница) пространства имен System: :Web: :UI (Система::Сеть::Пользовательский интерфейс), а также классами, производными от класса Page (Страница), что иллюстрируется на примере последней рассмотренной нами страницы с фоновым кодом.
Наследование от класса Page (Страница)
Выходная страница генерируется в результате взаимодействия элементов, которые содержатся в .aspx-файле, кода, который содержится в файле с фоновым кодом (или сценария в случае С# или VB.NET) и базового класса Page (Страница). Возможность такого взаимодействия обеспечивает ASP.NET. Для .aspx-файла ASP.NET динамически создает класс, производный от класса, реализованного с помощью фонового кода или сценария, который, в свою очередь, является производным от класса Page (Страница). Иерархия классов, производных от класса Page (Страница) показана на рис. 10.6. Созданный нами класс MyWebPage является производным от класса Page (Страница).
Рис. 10.6. Иерархия классов, производных от
класса Page (Страница)
Последним потомком (листом) класса Page (Страница) является класс My .aspx Page (рис. 10.6). Он динамически создается средой выполнения ASP.NET. Данный класс расширяет возможности класса MyWebPage (рис. 10.6). Он объединяет элементы управления и HTML-текст Web-формы. В результате компиляции данного класса создается исполняемый модуль. Когда страницу запрашивает броузер, загружается этот модуль. Он создает HTML-страницу, которая затем отсылается броузеру.