首页 > 代码库 > MVC4 异常过滤器

MVC4 异常过滤器

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcRazor.Models
{
    //异常过滤器
    public class MyExceptionFilterAttribute:HandleErrorAttribute
    {
        public override void OnException(ExceptionContext filterContext)
        {
            base.OnException(filterContext);
            //当出现异常的时候,才执行次方法
            //记录日志(1.多个线程同时访问一个日志文件(使用线程锁,但是性能非常低)2.使用队列)
            //加入观察者模式屏蔽变化点
            //也没跳转到错误页面或者首页
            HttpContext.Current.Response.Redirect("/Error/Index");
        }
    }
}
using MvcRazor.Models;
using System.Web;
using System.Web.Mvc;

namespace MvcRazor
{
    public class FilterConfig
    {
        public static void RegisterGlobalFilters(GlobalFilterCollection filters)
        {
            #region 异常过滤器
            //替换成自己的异常过滤器
            //filters.Add(new HandleErrorAttribute());
            filters.Add(new MyExceptionFilterAttribute());
            #endregion
        }
        
    }
}

 

MVC4 异常过滤器