ASP.NET Core 过滤器中使用依赖注入

如何给过滤器ActionFilterAttribute也用上构造函数注入呢?

一般自定义的过滤器直接用特性方式标识就能使用

[ContentFilter]

因为构造函数在使用的时候要求传参,然后我们可以使用这个

ServiceFilter

在ASP.NET Core里,我们可以使用ServiceFilter来完成这个需求。

ServiceFilter允许我们解析一个已经添加IoC容器的服务,因此我们需要把ContentFilter注册一下。

services.AddScoped<ContentFilter>();

在需要的地方直接用特性方式标识

[ServiceFilter(typeof(ContentFilter))]

然后发现已经能被实例化使用了

原文地址:https://www.cnblogs.com/Uyde/p/11695533.html