ActionFilter to handle and log exception in ASP.Net MVC 3.0
using System.Text;
using System.Web.Mvc;
using Infrastructure.Log;
namespace Infrastructure.ActionFilters
{
public class HandleErrorAndLogExceptionFilter : HandleErrorAttribute
{
private readonly ILogManager _logger;
public HandleErrorAndLogExceptionFilter(ILogManager logger)
{
_logger = logger;
}
public override void OnException(ExceptionContext filterContext)
{
base.OnException(filterContext);
var url = filterContext.HttpContext.Request.Path;
var error = filterContext.Exception;
var text = new StringBuilder("Error occurred at ");
text.Append(url);
text.AppendLine(" With error: ");
text.AppendLine(error.ToString());
_logger.Error(text);
}
}
}
The ActionFilter is registred for all Controllers in the Global.asax:
public void RegisterGlobalFilters(GlobalFilterCollection filters)
{
...
filters.Add(new HandleErrorAndLogExceptionFilter(new MyLogger()));
}
Fork
ActionFilter to Handle and Log Error for each Controller, ASP.NET MVC - @fredrikn Monday 21, 2011 3:45 PM
0 Feedback
You must log in before you can give any feedback
You must log in before you can post a comment


1.1k
0




Mark 'asp.net' tag as 'like'
Mark 'asp.net' tag as 'ignore'