Asp.net 未处理异常
2015-08-13 15:32
567 查看
页面级捕获未处理异常 - Page 的 Error 事件
在Page的Error事件处理函数Page_Error中编写处理逻辑。
页面级捕获未处理异常 - Page 的 ErrorPage 属性
要让ErrorPage属性生效需要在Web.config中将customErrors 的 mode 设置为On
3. 应用程序级捕获未处理异常 - Web.config
通过设置customErrors 节点来捕获未处理异常,mode属性有以下三种预设值,
Off - 禁用自定义错误信息,本地和远程用户都会看到详细的错误信息,即黄页。
RemoteOnly - 表示本地用户将看到详细错误信息,而远程用户将会看到自定义错误信息。只对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便不向远程客户端显示应用程序的详细信息。
On - 表示在本地和远程用户都会看到自定义错误信息(友好的)。
4. 应用程序级捕获未处理异常 - Global.asax
.NET提供了四种错误处理机制,它们有一定的优先级 顺序:Page_Error事件 > ErrorPage属性 > Application_Error事件 > <customErrors>配置项 。
Protected Sub Page_Error(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Error Response.Redirect("errorInfo.aspx?ErrMsg=Unhandled&Detail=" & System.Web.HttpUtility.UrlEncode(Server.GetLastError.ToString)) End Sub
在Page的Error事件处理函数Page_Error中编写处理逻辑。
页面级捕获未处理异常 - Page 的 ErrorPage 属性
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Me.ErrorPage = "errorInfo.aspx" End Sub
要让ErrorPage属性生效需要在Web.config中将customErrors 的 mode 设置为On
<configuration> <system.web> <customErrors mode="On"/> </system.web> </configuration>
3. 应用程序级捕获未处理异常 - Web.config
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm"> <error statusCode="403" redirect="NoAccess.htm" /> <error statusCode="404" redirect="FileNotFound.htm" /> </customErrors>
通过设置customErrors 节点来捕获未处理异常,mode属性有以下三种预设值,
Off - 禁用自定义错误信息,本地和远程用户都会看到详细的错误信息,即黄页。
RemoteOnly - 表示本地用户将看到详细错误信息,而远程用户将会看到自定义错误信息。只对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便不向远程客户端显示应用程序的详细信息。
On - 表示在本地和远程用户都会看到自定义错误信息(友好的)。
4. 应用程序级捕获未处理异常 - Global.asax
Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs) ' Code that runs when an unhandled error occurs Response.Redirect("errorInfo.aspx?ErrMsg=Unhandled&Detail=" & System.Web.HttpUtility.UrlEncode(Server.GetLastError.ToString)) End Sub
.NET提供了四种错误处理机制,它们有一定的优先级 顺序:Page_Error事件 > ErrorPage属性 > Application_Error事件 > <customErrors>配置项 。
相关文章推荐
- asp.net mvc4中model与Model的区别
- Telerk-asp.net 第三方控件之控件讲解 RadAjaxPanel(二)
- ASP.NET MVC文件上传简单示例
- Asp.net动态页面静态化之初始NVelocity模板引擎
- 管理员登录设计(第7节)
- asp.net 正则表达式
- ASP.NET在线文本编辑控件的使用(第6节)
- asp.net 关闭子窗体 刷新主窗体
- 自学MVC看这里——全网最全ASP.NET MVC 教程汇总
- 自学MVC看这里——全网最全ASP.NET MVC 教程汇总
- ASP.NET实现用户注册和验证功能(第4节)
- 大型Web 网站 Asp.net Session过期你怎么办
- 大型Web 网站 Asp.net Session过期你怎么办
- ASP.NET网站聊天室的设计与实现(第3节)
- ASP.NET网站模板的实现(第2节)
- ASP.net MVC+ViewData VS ViewBag
- DevExpress v15.1:ASP.NET MVC功能升级(一)
- 创建第一个ASP.NET应用程序(第1节)
- ASP入门(七)-Response小案例
- ASP入门(六)-Response对象