ASP.NET页面错误处理
来源:互联网 发布:网络安全之社交软件 编辑:程序博客网 时间:2024/05/18 09:05
页面级错误
protected override void OnError(EventArgs e){ Exception ex = Server.GetLastError(); if(ex is NotImplementedException) Server.Transfer("errorpages/notImplemented.aspx"); else Server.Transfer("errorpages/apperror.aspx"); Server.ClearError();}
通过Server对象的GetLastError方法,我们获得被引发的异常。然后传到特定的页面,展示给用户。最后一旦异常处理完成,应用调用ClearError清楚错误。
全局错误处理
页面的Error事件处理能够捕获特定页面的错误,如果要使组合应用程序的所有页面共享一套错误处理代码,我们可以在应用程序级创建一段全局错误处理程序,便可捕获所有未处理异常。实现几乎和页面级的错误处理程序一样,只不过处理的是代表整个应用程序的HttpApplication对象中的Error事件,为此,我们需要将global.asax文件添加到程序中,并定义Application_Error方法:
protected override void OnError(EventArgs e){ Exception ex = Server.GetLastError(); if(ex is NotImplementedException) Server.Transfer("errorpages/notImplemented.aspx"); else Server.Transfer("errorpages/apperror.aspx"); Server.ClearError();}
错误的页面映射
当未处理异常抵达调用栈末端时,ASP.NET会报黄页,但是我们还可以通过使用应用程序Web.Config文件中的<customErrors>区段,可以对这个功能进行充分的控制。
<configuration> <system.web> <customErrors mode="Off"> </customErrors> </system.web></configuration>
mode属性用于决定错误消息是启动、关闭还是只显示给远程客户端。
当mode设为RemoteOnly时,远程用户会收到一般性的错误提示页面,而本地可以得到详细的错误信息。
当mode设为off时,本地和远程用户都会显示包含详细错误的页面。
可以自定义错误页面
<configuration> <system.web> <customErrors mode="Off" defaultRedirect="GenericErrorPage.htm"> </customErrors> </system.web></configuration>
如果mode为on时,本地和远程都将会把defaultRedirect="GenericErrorPage.htm"页面来代替原来的错误报黄页面,为用户展示友好的错误提示,大多数自定义的错误页面时纯HTML编写的。
常见的HTTP错误处理
ASP.NET还使我们能够针对发生的不同HTTP错误显示相应的自定义页面。错误页面和特定HTTP状态之间的映射,可以定义在<customErrors>区段,设置<error>标签,将HTTP状态码
和自定义错误页面关联起来:
<configuration> <system.web> <customErrors mode="Off" defaultRedirect="GenericErrorPage.htm"> <error statusCode="403" redirect="NoAccess.htm"/> <error statusCode="404" redirect="FileNotFound.htm"/> </customErrors> </system.web></configuration>
- asp.net页面错误处理
- ASP.NET页面错误处理
- ASP.NET页面错误处理
- ASP.NET页面错误处理
- ASP.NET页面错误处理
- asp.net中自定义错误处理页面
- asp.net中自定义错误处理页面
- asp.net中自定义错误处理页面
- ASP.NET定制简单的错误处理页面
- asp.net 定制简单的错误处理页面
- asp.net 定制简单的错误处理页面
- asp.net 定制简单的错误处理页面
- asp.net 定制简单的错误处理页面
- ASP.NET定制简单的错误处理页面
- ASP.NET定制简单的错误处理页面
- asp.net 定制简单的错误处理页面
- ASP.NET定制简单的错误处理页面
- asp.net中创建自定义的错误处理页面
- Qt中自定义文件格式,读写二进制文件的串行化类的使用
- SiteMesh 2学习(1):入门简介和简单实例
- IAP一个实例---LPC2214的IAP实现方案
- dbca创建数据库报ORA-00443
- android onNewIntent使用详解
- ASP.NET页面错误处理
- sitemesh原理与配置应用
- C++动态库静态库和Release、Debug版本的属性设置
- ubuntu12.04上增加VNC远程桌面连接访问
- 信息安全的重要性不容忽视
- AChartEngine
- Selenium自动化测试用例设计注意事项一二
- 2013 google code jam Lawnmower
- SQL server 常用语句积累