快网首页 | 虚拟主机 | 域名注册 | 特惠套餐 | 企业邮局 | SQL7乐娱乐网址 | IDC业务 | 全球通邮
ASP.NET全局异常处理浅析,ASP.NET全局异常处理
客服中心 新闻动态 常见问题 常用资料 知识学堂 走近客服 在线提问 网站导航
ASP.NET全局异常处理浅析,ASP.NET全局异常处理
网页设计 | 操作系统 | 程序开发 | Dos 命令 | 平面设计 | 办公软件

 您的位置: 快网首页 >> 客服中心 >> 知识学堂 >> 程序开发 >> 文章正文

ASP.NET全局异常处理浅析
供稿:润之康   时间:2009-2-14 14:53:56

在我们写程序时偶尔会由于疏忽导致有些异常没有进行处理。如果将异常详细信息提示给用户会带来不安全因素,如果不提示详细信息又会给用户报告异常带来麻烦。虽然可以通过配置customErrors mode来实现只有管理员可以查看错误,但发现问题的时间可能会比较长。通过全局异常处理就可以在异常发生时立即记录异常,或直接发送邮件向管理员报告,以在最快的速度发现并处理异常。

要为ASP.NET应用程序添加全局异常处理主要是添加HttpApplication的Error事件的处理。这与在BeginRequest事件中进行URL重写方法类似。先建一个继承System.Web.IHttpModule的类。然后添加Init方法和ShowError方法。

namespace Snowdream
{
public class HttpModule : System.Web.IHttpModule
{
public void Init(System.Web.HttpApplication context)
{
context.Error += new EventHandler(ShowError);
}
private void ShowError(object sender, EventArgs e)
{
//在这里进行异常处理
}
}
}

  然后还需要配置web.config的httpModules使之生效。

我现在比较喜欢的做法是将异常的详细信息记录在数据库中,然后返回一个编号,再将页面重定向到自己写的错误提示页,将这个编号提示给用户,用户如果要报告错误只需提供该错误编号,管理员就能在后台中找到错误的详细信息并进行修改。

下面说2个我在做全局异常处理时碰到的问题及我的解决方案:

第一个是获取异常hResult,由于是私有属性不能直接访问,解决方法是通过(int)System.Runtime.InteropServices.Marshal.GetHRForException(exception)来获取;

第二个问题是记录了很多不是由于ASP.NET应用程序引发的错误,比如用户键入一个错误的URL,异常处理系统会记录一个“文件不存在。”的错误,而这些错误记录不仅不能真正反映出ASP.NET应用程序的异常反而会给管理员带来更多麻烦。我的解决方法是通过判断if(exception is System.Web.HttpException)来过滤这些HttpException。


快网保留以上说明的最终解释权
快网,域名注册,虚拟主机,ASP7乐娱乐网址,企业邮局,SQL7乐娱乐网址,主机租用,主机托管
热门搜索:FTP 域名 DNS 备案 7乐娱乐网址 邮箱 SQL 主机 快网 中文域名 虚拟主机
快网,域名注册,虚拟主机,ASP7乐娱乐网址,企业邮局,SQL7乐娱乐网址,主机租用,主机托管
快网客服中心的相关信息:
v 如果更改 Sql Server 2008 表字段 不让更改怎么办? [2014-1-26 9:37:14]
v sql2005 远程连接问题解决方法 [2012-5-10 13:13:22]
v Mysql修改设置root密码的命令及方法 [2012-3-19 18:05:19]
v 主机不支持fsockopen函数的解决方法 [2011-5-16 16:19:15]
v 64位Windows 2008/7下配置IIS+PHP出现404.17错误的解决办法 [2011-2-3 16:18:48]
快网,域名注册,虚拟主机,ASP7乐娱乐网址,企业邮局,SQL7乐娱乐网址,主机租用,主机托管
快网,域名注册,虚拟主机,ASP7乐娱乐网址,企业邮局,SQL7乐娱乐网址,主机租用,主机托管
如果您在使用我们的产品中遇到问题,建议您首先在“常见问题”中查询解决方法;
如果没有找到该问题的解决方法,您可以在“问题搜索”中进行搜索;
如果搜索后没有找到满意答案,您可以“在线提问”,我们会尽快给您答复。
快网,域名注册,虚拟主机,ASP7乐娱乐网址,企业邮局,SQL7乐娱乐网址,主机租用,主机托管
域名注册查询 中文域名转码
域名whois查询 网站PR值查询
快网,域名注册,虚拟主机,ASP7乐娱乐网址,企业邮局,SQL7乐娱乐网址,主机租用,主机托管

:::::: | 收藏本站 | 关于我们 | 客服中心 | 付款方式 | 联系我们 | 网站律师 | 工作机会 | 网站地图 | 产品管理 | ::::::

Copyright (C) 2003-2008 天津追日科技发展有限公司 dsn-caipiao.top 快网.cn 中国快网.cn