当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET的四种错误机制

ASP.NET
asp.net DiscuzNT登录,退出的代码
ASP .NET中执行控件(如ImageButton、LinkButton等)命令不刷新页面
Microsoft SQL Server 2005 Express 远程访问设置详述,100%成功篇
使用.NET命令行编译器编译项目(如ASP.NET、C#等)
asp.net 去除viewstate
asp.net repeater实现批量删除
asp.net安全、实用、简单的大容量存储过程分页
asp.net 获取图片高度和宽度实例代码
在GridView中LinkButton的属性的应用(如何不用选中就删除这一行)
关于.net(C#)中的跨进程访问的问题
asp.net request.PathInfo实现的url重写
asp.net SqlDataReader绑定Repeater
ASP.NET 动态写入服务器端控件
Discuz .net版本中的短消息系统
asp.net动态加载用户控件,关于后台添加、修改的思考
.net Cookies安全性实践分析
配置Visual Studio 以调试.net framework源代码
asp.net 大文件上传 之 改版了的SlickUpload.HttpUploadModule(Krystalware.SlickUpload.dll)
asp.net Web站点风格切换的实现
asp.net 用户控件中图片及样式问题

ASP.NET的四种错误机制


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 163 ::
收藏到网摘: n/a

  摘自CNblogs Fantasy Soft的文章:

  1,Webconfig设置

  <?xml version="1.0"?>
    <configuration>
  <system.web>
  <customErrors mode="On" defaultRedirect="GenericErrorPage.htm">
  <error statusCode="403" redirect="Error403.htm" />
  <error statusCode="404" redirect="Error404.htm" /> 
  </customErrors>
  </system.web>
  </configuration>

  2,Global.asax设置

  protected void Application_Error(object sender, EventArgs e) {
  Exception objErr = Server.GetLastError().GetBaseException();
  Response.Write("Error:" + objErr.Message);
  Server.ClearError();
  }

  3,使用ErrorPage属性

  <script language="C#" runat="server">
  protected void Page_Load(object sender, EventArgs e) {
        this.ErrorPage = "ErrorPage.htm";
        }  
  </script>

  4,使用Page_Error事件处理方法
  protected void Page_Error(object sender, EventArgs e) {
  Exception objErr = Server.GetLastError().GetBaseException();
  Response.Write("Error:" + objErr.Message);
  Server.ClearError(); //同样要注意这句代码的使用
  } 

  根据优先级从高到低排序:Page_Error事件处理方法 > ErrorPage属性 > Application_Error事件处理方法 >  <customErrors>配置项。