WEB程序异常捕获的方法

方法一:修改 Web.Config 文件

       描述:

该方法可以便捷的对所有异常进行屏蔽,并转向到特定的友好页面,但不能获取具体的异常信息。

 

       方法:

              修改 Web.config 中的 ”customErrors” 设置,使其将异常定向到指定页面,可参考以下代码:

 

< customErrors   mode ="RemoteOnly" defaultRedirect="~/portal/customError.aspx" ></ customErrors >

方法二:修改 Global.asax.cs 文件

       描述:

              该方法可以在发生异常时按照程序的逻辑去处理异常。

      

方法:

       修改 Global.asax.cs 文件,添加 Error 事件,并捕获具体错误。

 

InitializeComponent方法中添加事件

         #region Web 窗体设计器生成的代码

         /// <summary>

         /// 设计器支持所需的方法 - 不要使用代码编辑器修改

         /// 此方法的内容。

         /// </summary>

         private void InitializeComponent()

         {   

              this.Error += new System.EventHandler(this.Global_Error);    // 添加事件

         }

         #endregion

 

新增Error事件对应的处理函数

         private void Global_Error(object sender, System.EventArgs e)

         {

              Exception objErr = Server.GetLastError().GetBaseException();// 获取刚刚发生的错误

              Server.ClearError();   // 清空错误

             

              // 对错误进行处理,可以根据objErr的属性获得详细的异常信息,其中Message属性最为详细

              // 这里是将错误信息以URL QUERY的方式发送给一个指定的异常友好显示页面,由该页面做UI显示

              Response.Write( "<script>window.open('customError.aspx?msg=" + Server.UrlEncode(

objErr.Source + "|" + objErr.TargetSite.Name + "|" +objErr.Message ) + "','_self')</script>" );

 

         }

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值