对于编程这件事情来说,我一直认为:先用再深入了解原理是一种很容易学到东西的学习方法,所以在这就先简单地介绍一下 ASP.NET 管道事件与HttpModule一个简单地实现。
1、新建类库,生成.dll文件
这里要注意新建一个类,类一定要继承IHttpModule接口,然后进行接口的实现,在这,我注册了一个事件:EndRequest,在一次请求结束时发生的事件
代码如下:
using System;
using System.Web;
namespace httpguandao
{
public class StatisticsTime : IHttpModule
{
public void Dispose()
{
}
public void Init(HttpApplication context)
{
context.EndRequest += new EventHandler(ss);//进行事件的注册
}
private void ss(object sender, EventArgs e)
{
HttpApplication app = sender as HttpApplication;
app.Response.Write("13333");
}
}
}
然后生成解决方案,我们就得到了一个httpguandao.dll的库文件。
2、新建项目,web form应用程序
3、添加引用,httpguandao.dll
4、在web.config中进行配置
为了适应不同的iis模式,有两种不同的配置方法
在经典模式下:
<system.web>
<modules>
<add name="ww" type="httpguandao.StatisticsTime"/>
</modules>
</system.web>
在集成模式下:
<system.webServer>
<modules>
<add name="ww" type="httpguandao.StatisticsTime"/>
</modules>
</system.webServer>
type="命名空间.类名"
关于iis和HttpModule详细介绍,在接下来的文章中再做详细介绍