ASP.NET页面错误处理

ASP.NET 提供三种用于在出现错误时捕获和响应错误的主要方法:Page_Error 事件、Application_Error 事件以及应用程序配置文件 (Web.config)。

这里主要介绍Application_Error 事件的方法,这种方法能完整地显示错误信息。

1、添加Web.config, < system.web>< /system.web>中添加< customErrors mode="ReadOnly" defaultRedirect="ApplicationErroy.aspx" >< /customErrors>节点,

2、添加Global.asax文件,找到Application_Error事件,加入以下代码:

 1 //这是添加了一个全局应用程序类 在Application_Error事件中处理错误页面 和web.config没有关系 即使没有web.config 也是可以定位到错误页面
 2     void Application_Error(object sender, EventArgs e)
 3     {
 4         //在出现未处理的错误时运行的代码
 5         Exception erroy = Server.GetLastError();    
 6          string err = "出错页面是:" + Request.Url.ToString() + "</br>";    
 7          err += "异常信息:" + erroy.Message + "</br>";   
 8          err += "Source:" + erroy.Source + "</br>";    
 9          err += "StackTrace:" + erroy.StackTrace + "</br>";    
10         //清除前一个异常
11         Server.ClearError();
12            
13          //此处理用Session["ProError"]出错。所以用 Application["ProError"]
14          Application["erroy"] = err;
15          //此处不是page中,不能用Response.Redirect("../frmSysError.aspx");
16          System.Web.HttpContext.Current.Response.Redirect(HttpContext.Current.Request.ApplicationPath + "error.aspx");   
17     }

3、添加错误处理页面:error.aspx.cs 加入以下代码:

 1 protected void Page_Load(object sender, EventArgs e)
 2     {
 3         //显示程序中的错误码
 4         if (!IsPostBack)
 5         {
 6             //显示程序中的错误码
 7             if (Application["erroy"] != null)
 8             {
 9                 Response.Write(Application["erroy"].ToString());
10             }
11         }
12     }

 

转载于:https://www.cnblogs.com/fiona-zhang/p/3621761.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值