专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > DotNet Exception

Global.asax和HttpModule中的错误处理

发布时间:2011-06-26 20:19:10 文章来源:www.iduyao.cn 采编人员:星星草

Global.asax和HttpModule中的错误处理:

在Global.asax和HttpModule中处理错误有什么区别,我在
Global.asax中处理错误没的问题,但是一样的代码在HttpModule中就经常出现Server.GetLastError()为空的现象

if (Context != null && Context.IsCustomErrorEnabled)
Server.Transfer( "~/error.aspx ", false);

转到 error.aspx 中处理

使用 Global.asax 就没有任何问题
在HttpModule中处理,error.aspx 文件中的Server.GetLastError().GetBaseException();的就经常出现为空的问题

------解决方法--------------------------------------------------------
Global.asax文件在编译时会继承HttpApplication,实际上就把Global.asax里的写的事件处理挂接到HttpApplication里,HttpModule一般也挂接在HttpApplication上事件上,只过一般只是处理某一个事件,显得功能更加单一,而且一般是处理页面之前的事件,如UrlReWrite
------解决方法--------------------------------------------------------
使用上没有区别,只是耦合度不同。Global.asax就直接耦合在HttpApplication中,而HttpModule的耦合度低。

    
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: