httpmodule和httphandler(即管道)------页面生命周期------Application的19个标准事件 三者的关系探究

参考资料:

Asp.Net构架(Http请求处理流程) - part 1: http://www.cnblogs.com/jimmyzhang/archive/2007/09/04/880967.html  

Asp.Net 构架(HttpModule 介绍) - Part.3 :http://www.cnblogs.com/JimmyZhang/archive/2007/11/25/971878.html

页面生命周期:http://www.cnblogs.com/yellowapplemylove/archive/2011/04/19/2021601.html 

 

Application的19个标准事件:asp.net本质论 书中有。

 

 这三个知识点,其实都有过认识,但有一个问题要解决:

    一个Http请求来到服务器,先经过iis的http.sys内置驱动程序来监听来自外部的 HTTP请求(IIS6.0中叫做 w3wp.exe,IIS5.0中叫做 aspnet_wp.exe。).经过进入httpruntime,httpruntime中主要就进行了管道的处理,httpmodule是去调用19个事件中的事件,httpHandler是最终处理,如aspx(也就是所谓的页面生命周期的进行)。但有一个问题就是,application的19个标准事件哪来的?

 

答: 应这么解释:在HttpRuntime中,Framework会对请求进行处理,处理的过程中,有19个标准时间,诸如BeginRequest,HttpModule可以注册这个事件,当框架执行到这个事件时,httpmodule里的方法也会执行。补充:一般来说,我们可以将Asp.Net中的事件分成三个级别,最顶层是 应用程序级事件、其次是页面级事件、最下面是控件级事件,事件的触发分别与 应用程序周期、页面周期、控件周期紧密相关。而 Http Module 的作用是与应用程序事件 密切相关的。

 

 

posted @ 2011-11-28 18:00  苏先森1989  阅读(760)  评论(2编辑  收藏  举报