Конфигурирование и настройка Microsoft ASP.NET



         

Создание собственного модуля HTTP - часть 2


/p>

Все эти события доступны для собственных модулей HTTP. Давайте посмотрим, как добавлять события в собственный модуль HTTP. Первым шагом является передача события в метод Init.

C#

public void Init(HttpApplication application) { application.EndRequest += (new EventHandler(this.Application_EndRequest)); }

VB.NET

Public Sub Init(ByVal application as HttpApplication) Implements _ IHttpModule.Init AddHandler application.EndRequest, _ AddressOf Me.Application_EndRequest End Sub

Когда модуль инициализирован, событие EndRequest объекта Application передается в метод Application_EndRequest. Когда готов к отправке ответ, вызывается метод Application_EndRequest, модифицирующий ответ. Ниже приведен код, в котором данный метод модифицирует запрос.

C#

private void Application_EndRequest(Object source, EventArgs e) { HttpApplication application = (HttpApplication) source; HttpContext context = application.context; context.Response.Write("Copyright James Avery 2003"); }

VB.NET

Private Sub Application_EndRequest(ByVal [source] As [Object], _ ByVal e As EventArgs) Dim application as HttpApplication = CType([source], _ HttpApplication) Dim context As HttpContext = application.Context context.Response.Write _ ("Copyright James Avery 2003</body></html>") End Sub

При выполнении запроса к приложению ASP.NET этот запрос обрабатывается как обычно. Непосредственно перед отправкой ответа запускается данный метод, добавляющий в конец запроса текст копирайта. Перед выполнением модуля его нужно зарегистрировать в вашем настроечном файле.

<httpModules> <add name="CopyrightModule" type="Microsoft.CopyrightModule" /> </httpModules>

Теперь при обработке HTTP будет выполняться модуль копирайта, и в конец потока ответа будет добавлен текст об авторских правах.




Содержание  Назад  Вперед