Компиляция Web-приложений

ASP.NET реализует Web-приложения как aspx-файлы и файлы кода. Библиотека aspnet_isapi.dll разбирает эти файлы и формирует код класса наследуемый от System.Web.UI.Page. Код формируется на языке, используемом страницей.

ASP.NET позволяет при создании страниц:

§  формировать общий aspx-файл, включающий программный код;

§  формировать отдельно aspx-страницу и файл отделенного кода.

Пространство имен System.Web.UI.WebControls содержит классы, позволяющие применять на Web-страницах серверные элементы управления.

Как правило, aspx-файлы содержат серверные элементы управления, указываемые тегом <asp:тип_элемента runat="server"></asp:тип_элемента>. Каждый такой элемент управления компилируется как член класса.

Например, строка кода с серверным элементом управления

<asp: TextBox ID="Text1" runat="server">

                              </asp: TextBox >

приводит к добавлению в класс компонента типа

  System.Web.UI.WebControls.TextBox.

На aspx-странице можно создать объект класса библиотеки .NET Framework. Это реализуется тегом object с атрибутами id (идентификатор переменной) и class (тип переменной).

Напритмер:

<object id="Arr1"   

   class="System.Collections.ArrayList"

   runat="server"/>

Такое объявление приведет к созданию в формируемом классе следующей переменной члена класса:

System.Collections.ArrayList Arr1;

 

На следующей схеме показан процесс формирования класса Web-приложения для модели, использующей aspx-файл и файл кода (технология отделенного кода).

В aspx-файле директива @ Page содержит атрибут Inherits, указывающий на наличие частичного файла класса (наследуемого в данном примере от MyPage). Этот класс наследуется от класса Page. Второй создаваемый класс строится для aspx-страницы и наследует этот частичный класса. Эти классы компилируются в сборку, составляющую Web-приложение.

Во время выполнения файл Global.asax компилируется в класс, наследуемый от HttpApplication. На следующей схеме представлена структура объектов HttpApplication.

 

Объект HttpApplication используется для обработки событий, инициируемых приложением. Для этого объекта вначале вызывается метод Application_Start, а при завершении – метод Application_End.

По умолчанию компиляция ASP-страниц выполняется при первом обращении к ним. Однако, существует возможность предкомпиляции приложения после его развертывания (используя утилиту aspnet_compiler).

ASP.NET позволяет некоторые страницы обозначать как некомпилируемые: такая страница не может иметь отделенного кода.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100