首页 > Web开发 > 详细

MVC 使用HandleErrorAttribute统一处理异常

时间:2014-06-07 22:10:57      阅读:764      评论:0      收藏:0      [点我收藏+]

    HandleErrorAttribute继承自FilterAttribute,且实现了IExceptionFilter接口。

    属于AOP思想的一种实现,MVC的四大筛选器(权限,动作,结果,异常)中的异常处理。

Usage

1.创建自定义异常处理

bubuko.com,布布扣
public class AppHandleErrorAttribute : HandleErrorAttribute
{
    public override void OnException(ExceptionContext filterContext)
    {
        var json = new JsonResponse();
        json.success = false;
        var ex = filterContext.Exception;
        //deal custom exception…
        json.message = "系统异常,请联系管理员!";
        string msg = string.Format("系统异常:{0}", ex.Message);
        LogHelper.Error(msg, ex);   //Log4jNet
        
filterContext.ExceptionHandled = true;
        var result = new JsonResult();
        result.Data = json;
        result.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
        filterContext.Result = result;
    }
}
bubuko.com,布布扣
 

2.注册

bubuko.com,布布扣
public class FilterConfig
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new AppHandleErrorAttribute());
    }
}
bubuko.com,布布扣

参考:http://www.cnblogs.com/linjiancun/archive/2010/09/16/1827937.html

MVC 使用HandleErrorAttribute统一处理异常,布布扣,bubuko.com

MVC 使用HandleErrorAttribute统一处理异常

原文:http://www.cnblogs.com/pengzhen/p/3774814.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!