一、引言
上篇介绍了Http的请求过程提到了在请求进入到创建完 HttpApplication 对象后,将进入一系列的处理事件Event,那么这些事件具体都有哪些呢,这篇文章就来简要阐述一下。
二、正文
既然请求最后交给了 HttpApplication 处理,那么通过获取该对象,我们就可以通过反射来获取到该对象当中所有的事件,先看下具体的代码。
public ViewResult GetEvents(){ HttpApplication application = HttpContext.ApplicationInstance; ListsysEventList = new List (); foreach (EventInfo item in application.GetType().GetEvents()) { sysEventList.Add(new SysEvent() { Name = item.Name, TypeName = item.GetType().Name }); } return View(sysEventList);}
所以我们可以知道,httpapplication 会按照顺序执行25个事件,这些具体的事件如下:
而一般都会执行的事件为2到21这19个事件。那么了解了这些事件之后,我们可以做什么呢?我们可以在处理请求的时候增加一些我们自定义的功能,那么如何增加呢,可以通过实现 IHttpModule 接口来进行扩展。