全局异常过滤器

TC0920 / 2023-08-19 / 原文

在 ASP.NET Core 中,可以使用异常过滤器(Exception Filter)来捕获和处理应用程序中的异常。IExceptionFilter 接口和 IAsyncExceptionFilter 接口都可以用来实现自定义的异常过滤器。

首先,在WebApi中创建一个名为 CustomExceptionFilter的实体类

 在这个示例中,我们创建了一个名为 CustomExceptionFilter 的自定义异常过滤器,它实现了 IAsyncExceptionFilter 接口。在 OnExceptionAsync 方法中,我们记录了异常并返回一个 ViewResult 对象来显示用户友好的错误信息。

全局异常过滤器,需要在Program.cs进行注册:

 全局异常记录日志时,也需要进行Nlog包的注册: