码迷,mamicode.com
首页 > Web开发 > 详细

MVC异常处理

时间:2015-05-18 15:58:50      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:

使用Nlog记录异常信息

首先引用NLog的dll文件,修改配置文件,在configuration下的configSections节点下,配置Nlog关联的配置节例如 <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog" /> ,在configuration节点下配置nlog日志输出路径配置

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <targets>
      <target name="fileLog" type="File" fileName="${basedir}/Log/${shortdate}/${level}.txt" layout="【${date:format=yyyy-MM-dd HH\:mm\:ss}】【${level}】 ${message} ${exception}" />
    </targets>
    <rules>
      <logger name="*" minlevel="Debug" writeTo="fileLog" />
    </rules>
  </nlog>

新建一个继承自HandleErrorAttribute的特性,用于处理异常,代码如下

public class CustomerExceptionAttribute:HandleErrorAttribute
    {
        /// <summary>
        /// 异常处理
        /// </summary>
        /// <param name="filterContext"></param>
        public override void OnException(ExceptionContext filterContext)
        {
            NLog.LogManager.GetCurrentClassLogger().Error(filterContext.Exception);
            base.OnException(filterContext);
            filterContext.HttpContext.Response.Redirect("");
        } 
    }

在需要处理异常的地方添加该特性

        [CustomerException]
        public ActionResult Index()
        {
            int a = 0;
            int b = 3 / a;
            return View();
        }

 

MVC异常处理

标签:

原文地址:http://www.cnblogs.com/oucuicui/p/4511896.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!