[英]Autofac WebAPI Common Service Locator
因此,请阅读有关与WebApi一起使用的Autofac文档 ,它说:
OWIN集成中的一个常见错误是使用
GlobalConfiguration.Configuration
我有一个BaseController
,它使用IMediator
并从容器中获取实例,我使用GlobalConfiguration.Configuration.DependencyResolver.GetService()
。
如果我不使用GlobalConfiguration
什么其他选择我必须注入IMediator
。
最好不要使用构造函数注入,因为那样的话,其他api控制器就不需要构造函数了,而且由于IMediator
很少IMediator
。
我已经看过属性注入,但是我不明白如何将其集成到Web api场景中,我使用了builder.RegisterApiControllers
,看起来在基础控制器上集成属性注入并不适合这种方法。
builder.RegisterApiControllers()
返回IRegistrationBuilder
,这意味着您可以从那里继续自定义Controller注册。 例如,如果您需要对控制器应用属性注入,则可以使用以下代码:
builder.RegisterApiControllers().PropertiesAutowired();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.