因此,阅读Autofac documentation与WebApi一起使用时,它说:
OWIN集成中的常见错误是使用
GlobalConfiguration.Configuration
我有BaseController
使用IMediator
并从我使用GlobalConfiguration.Configuration.DependencyResolver.GetService()
的容器中获取实例。
如果我不使用GlobalConfiguration
,我还需要注入IMediator
。
不使用构造函数注入很好,因为其他api控制器不需要构造函数,因为IMediator
很少会。
我看过属性注入,但我无法理解如何将它集成到web api场景中,我使用builder.RegisterApiControllers
并且它看起来并不像在基本控制器上集成属性注入一样这种方法。
答案 0 :(得分:1)
builder.RegisterApiControllers()
返回IRegistrationBuilder
,这意味着您可以从那里继续自定义Controller注册。
例如,如果您需要将属性注入应用于控制器,则可以使用以下代码:
builder.RegisterApiControllers().PropertiesAutowired();