它允许开发者在发生异常时,自定义异常的处理方式。
在 ASP.NET MVC 中,当控制器中的某个方法抛出异常时,HandleErrorAttribute
可以捕获这个异常,并执行相应的处理逻辑。这可以确保应用程序在发生异常时,不会突然中断或崩溃,而是以一种更加友好的方式处理异常,例如显示一个错误页面或记录异常信息。
HandleErrorAttribute
类具有多个重载构造函数,允许开发者根据实际需要定制异常的处理方式。例如,可以指定要处理的异常类型、要跳转的错误页面、要记录的错误日志等。
总之,HandleErrorAttribute
类在 ASP.NET MVC 中扮演着一个重要的角色,它提供了一种全局处理控制器中异常的方式,帮助开发者创建更加健壮和可靠的应用程序。
cs
public class MyExceptionAttribute : HandleErrorAttribute
{
public static Queue<Exception> ExecptionQueue = new Queue<Exception>();
/// <summary>
/// 可以捕获异常数据
/// </summary>
/// <param name="filterContext"></param>
public override void OnException(ExceptionContext filterContext)
{
base.OnException(filterContext);
Exception ex = filterContext.Exception;
//写到队列
ExecptionQueue.Enqueue(ex);
//跳转到错误页面.
filterContext.HttpContext.Response.Redirect("/Error.html");
}
}