知识大全 ASP.NET页面错误处理

Posted

篇首语:人生难得几回搏,此时不搏待何时。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP.NET页面错误处理相关的知识,希望对你有一定的参考价值。

ASP.NET页面错误处理  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

    ASP NET应用可以再代码中利用异常捕获来处理错误(try catch)但是应用出现的所有错误 都用异常捕获来处理是一种不良的编程习惯 try catch使用简单 但是过度使用会导致严重的性能损失 如果能检测可能出现不预期情况 应该尽量使用其他方法 而将异常捕获作为最后考虑的手段 异常捕获是NET官方提供应用程序处理工具 如果ASP NET应用程序出现异常 运行时会试图寻找有意捕获它的代码块 异常会在栈中下上遍历 直到抵达当前应用程序的起始层 如果在这期间没有找到合适的处理程序 该异常便成为未处理异常 并使CLR抛出系统异常 用户会看见报黄页 应用程序也会随即终止         默认的错误页面用户在本地和远程计算机看到的典型错误页面是不一样的         本地用户会看到相对详细的错误信息 远程用户接收到的信息不会那么详细 主要是出于安全方面考虑         ASP NET提供了两级全局拦截点 分别位于页面级和应用程序级 帮助我们以编程的方法处理错误 基于基类Page暴露了Error事件 我们可以在页面中重写它 捕获页面执行期间引发的未处理异常 同样 HttpApplication类中也有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()                 通过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= >        </customErrors>        </system web>        </configuration>        如果mode为on时 本地和远程都将会把defaultRedirect= 页面来代替原来的错误报黄页面 为用户展示友好的错误提示 大多数自定义的错误页面时纯HTML编写的         常见的HTTP错误处理        ASP NET还使我们能够针对发生的不同HTTP错误显示相应的自定义页面 错误页面和特定HTTP状态之间的映射 可以定义在<customErrors>区段 设置<error>标签 将HTTP状态码        和自定义错误页面关联起来         <configuration>        <system web>        <customErrors mode= Off defaultRedirect= >        <error statusCode= redirect= />        <error statusCode= redirect= />        </customErrors>        </system web>        </configuration> cha138/Article/program/net/201311/13824

相关参考

知识大全 ASP.NET自定义错误处理页面的添加

ASP.NET自定义错误处理页面的添加  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  自定义错误

知识大全 ASP.net MVC自定义错误处理页面

ASP.netMVC自定义错误处理页面  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在ASPN

知识大全 ASP.NET自定义错误页面

ASP.NET自定义错误页面  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ASPNET提供三种

知识大全 IIS处理Asp.net请求和 Asp.net页面生命周期

IIS处理Asp.net请求和Asp.net页面生命周期  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 asp.net防止页面刷新或后退引起重复提交

  项目中遇到刷新后重复的向数据库增加一条相同的记录引出错误归纳得出问题是  怎样防止页面刷新或后退引起重复提交数据的问题  其实防止刷新是开发中经常遇到的问题通常有多种方法来实现(下面是一些解决方案

知识大全 ASP.NET的错误处理机制

ASP.NET的错误处理机制  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  对于一个Web应用程

知识大全 ASP.NET错误处理和程序优化

ASP.NET错误处理和程序优化  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nbs

知识大全 ASP.NET中的错误处理支持

ASP.NET中的错误处理支持  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ASPNET具有一

知识大全 ASP.NET 揭秘 ASP.NET页面的结构

ASP.NET揭秘ASP.NET页面的结构  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!TheSt

知识大全 ASP.NET生成eurl.axd Http异常错误处理

ASP.NET生成eurl.axdHttp异常错误处理  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧