2
为什么在asp.net核心视图中抛出的异常不会通过全局异常过滤器?我如何捕获并记录这些异常?查看ASP.NET核心异常处理
为什么在asp.net核心视图中抛出的异常不会通过全局异常过滤器?我如何捕获并记录这些异常?查看ASP.NET核心异常处理
由于异常过滤器在执行视图之前执行,因此您无法在视图中使用异常过滤器捕获异常。要捕捉这种类型的例外:
1-您可以使用UseExceptionHandler
全局处理所有异常(这不是mvc特定的解决方案)。
2-使用ResultFilter
赶上视图例外(这是知道MVC上下文):
public class ExceptionResultFilter : ResultFilterAttribute
{
public override void OnResultExecuted(ResultExecutedContext context)
{
if(context.Exception != null)
{
// log exception
}
base.OnResultExecuted(context);
}
}