从IIS中获取到用户请求后,在ASP.NET应用程序上的操作

都知道当请求进入到asp.net中后,会经历一个管道。而关于这个管道,有两个很重要的对象:HttpModule和HttpHandler。其中HttpModule就像是个过滤器一样。当请求到达某个过滤器时,就会触发.net的相关事件。而我们程序员就可以往这一个个的过滤器中添加事件,从而进行相应的处理。而对于HttpHandler其实是对消息的处理(和HttpModule是不一样的)。对于不同的请求,会响应不同的HttpHandler。比如.aspx页对应的HttpHandler为System.Web.UI.Page,WCF的.svc文件对应的HttpHandler为System.ServiceModel.Activation.HttpHandler(这些是动态网页,静态网页直接在IIS上直接返回了。没有进入到托管环境中。)。

 

前言:在管线中注册了httpmodule等事件并不代表事件起作用,还要创建HttpApplication处理事件

HttpApplication的事件处理程序:

1.通过IHttpModule创建:每当创建一个HttpApplication对象。都会遍历注册的HttpModule类型,并通过其Init方法,将HttpApplication对象传过去。

a:使用配置文件注册IHttpModule

b:通过特性,在项目的程序集中增加PreApplicationStartMethod特性来完成注册

2.通过在global.asax中自动创建HttpApplication处理事件(HttpApplicatiuon继承自global.asax类)

而在global.asax中有5个自动生成的事件Application_Start、Application_End、Application_Error。。。。这几个事件并不属于HttpApplicatiuon管道事件。

参考连接:https://www.cnblogs.com/liangxiaofeng/p/5628878.html#undefined

                  https://www.cnblogs.com/artech/

                 https://www.cnblogs.com/kissdodog/p/3527922.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值