【发布时间】:2018-06-23 15:46:19
【问题描述】:
我在ConfigureServices中注册了ActionFilterAttribute,但我想通过KeyFilter属性在CustomActionFilter中注入服务
public class CustomActionFilter : ActionFilterAttribute
{
public CustomActionFilter([KeyFilter("test2")]IService service)
{
}
}
过滤器注册:
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddScoped<CustomActionFilter>();
}
public class Service1 : IService
{
}
public class Service2 : IService
{
}
builder.RegisterType<Service1>().Keyed<IService>("test1");
builder.RegisterType<Service2>().Keyed<IService>("test2");
有人知道吗,如何注册过滤器以支持密钥过滤?
【问题讨论】:
-
您需要确保
IService和操作过滤器的任何其他依赖项也已注册。 -
更新问题以明确
标签: c# asp.net-core autofac