Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Exception handling 视图中的ASP.NET核心异常处理_Exception Handling_Asp.net Core_Asp.net Core Mvc - Fatal编程技术网

Exception handling 视图中的ASP.NET核心异常处理

Exception handling 视图中的ASP.NET核心异常处理,exception-handling,asp.net-core,asp.net-core-mvc,Exception Handling,Asp.net Core,Asp.net Core Mvc,为什么asp.net核心视图中抛出的异常不经过全局异常过滤器?如何捕获并记录这些异常?由于异常过滤器是在视图执行之前执行的,所以使用异常过滤器无法捕获视图中的异常。要捕获此类异常,请执行以下操作: 1-您可以使用UseExceptionHandler全局处理所有异常(这不是mvc特定的解决方案) 2-使用ResultFilter捕获视图中的异常(这是了解mvc上下文的): public class ExceptionResultFilter : ResultFilterAttribute {

为什么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);
    }
}