1. 页面级捕获未处理异常 - Page 的 Error 事件

         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中编写处理逻辑。

  2. 页面级捕获未处理异常 - 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 未处理异常的更多相关文章

  1. 在Application_Error获取Asp.Net未处理异常信息

    在Application_Error获取Asp.Net未处理异常信息 protected void Application_Error(object sender, EventArgs e) { // ...

  2. asp.net中的日志添加和未处理异常的记录

    1.第一次写博客如有错误欢迎纠正.邮箱:Jiangwenyuan0217@163.com: 2.此博客可能对初学者有些帮助,对哪些骨灰级的程序员来说都是分分钟的事了,所以就不用在这里费时间了. 环境说 ...

  3. asp.net捕获全局未处理异常的几种方法

    通过HttpModule来捕获未处理的异常[推荐] 首先需要定义一个HttpModule,并监听未处理异常,代码如下: public void Init(HttpApplication context ...

  4. asp.net 捕获全局未处理异常的几种方法

    通过HttpModule来捕获未处理的异常[推荐] 首先需要定义一个HttpModule,并监听未处理异常,代码如下: public void Init(HttpApplication context ...

  5. ASP.NET中处理异常的几种方式

    1.程序中使用try catch 对于预知会发生异常的代码段使用try catch主动捕获异常,适用于提示给用户或跳转到错误页面,或者通过其它方式处理异常(日志.通知等). int i = 10; i ...

  6. NET环境下的未处理异常(unhandled exception)的解决方案

    NET环境下的未处理异常(unhandled exception )的解决方案 .Net 框架提供了非常强大的异常处理机制,同时对一些非托管代码很难控制的系统问题比如指针越界,内存泄漏等提供了很好的解 ...

  7. C#不用union,而是有更好的方式实现 .net自定义错误页面实现 .net自定义错误页面实现升级篇 .net捕捉全局未处理异常的3种方式 一款很不错的FLASH时种插件 关于c#中委托使用小结 WEB网站常见受攻击方式及解决办法 判断URL是否存在 提升高并发量服务器性能解决思路

    C#不用union,而是有更好的方式实现   用过C/C++的人都知道有个union,特别好用,似乎char数组到short,int,float等的转换无所不能,也确实是能,并且用起来十分方便.那C# ...

  8. Xamarin.Android-捕获未处理异常(全局异常)

    一.前言 android中如果出现了未处理的异常,程序会闪退,这是非常不好的用户体验,很多用户会因此卸载APP,因此未处理的异常是应该尽力避免的. 有些很难避免的异常(如:IO.网络等),应在代码中进 ...

  9. 页面打开 抛出w3wp.exe 中发生未处理异常

    页面打开 抛出w3wp.exe 中发生未处理异常

随机推荐

  1. 转载:Java的接口及实例

    转自:http://blog.csdn.net/liujun13579/article/details/7736116/ 一.定义 Java接口(Interface),是一系列方法的声明,是一些方法特 ...

  2. Shiro简单配置

    注:这里只介绍Spring配置模式. 因为官方例子虽然中有更加简洁的ini配置形式,但是使用ini配置无法与spring整合.而且两种配置方法一样,只是格式不一样. 涉及的jar包 核心包shiro- ...

  3. chmod、chown、chgrp的意思

    文件权限管理chown->change owner 改变文件所有者chown test install.log -将install.log这个文件的所有者改为test用户 chgrp->c ...

  4. tomcat与oracle关于8080端口的冲突

    http://blog.csdn.net/baidu_24256693/article/details/44863935 由于电脑里同时安装了tomcat与oracle,所以8080的端口是冲突的. ...

  5. Hadoop总结篇之三---一个Job到底被提交到哪去了

    我们会定义Job,我们会定义map和reduce程序.那么,这个Job到底是怎么提交的?提交到哪去了?它到底和集群怎么进行交互的呢? 这篇文章将从头讲起. 开发hadoop的程序时,一共有三大块,也就 ...

  6. mysql的故事

    所有的条件都分开理解,命令之间没有包含吗?

  7. HBase内部操作日志说明

    版本:0.94-cdh4.2.1 1. Split Region [regionserver60020-splits-1397585864985] INFO org.apache.hadoop.hba ...

  8. Dimmer: 通过移动鼠标来改变 LED 的亮度

    原文地址 - https://www.arduino.cc/en/Tutorial/Dimmer 调光器 本例展示了如何通过个人电脑发送数据到 Arduino / Genuino 开发板来控制一个LE ...

  9. G不可失

    html和css部分和引用的库 <!DOCTYPE html><html lang="en"><head> <meta charset=& ...

  10. Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法

    首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion   ...