首页 > 解决方案 > 我应该使用 ExceptionFilter 还是中间件在 .NET 中进行异常处理

问题描述

我正在使用 .NET 5,我需要全局异常处理机制。

我应该使用ExceptionFilter还是中间件?哪一个是大多数 ASP.NET Core 应用程序的最佳实践?

标签: c#asp.net-coreexceptionfiltermiddleware

解决方案


作为一般指导,您应该尽可能选择中间件而不是过滤器。

如果您不需要 MVC 中的任何特定构造,那么您可以使用中间件安全地实现您的东西。如果您想使用 MVC 构造(例如:ModelStateIActionResults),请使用过滤器,因为它将启用对 MVC 的访问。


推荐阅读