【发布时间】:2019-11-19 20:15:26
【问题描述】:
我正在使用依赖注入和 Unity 容器开发 MVC4 应用程序。我可以通过在 Web 项目中实现 IDependencyResolver 类来解决依赖关系。在支持类库中是否有类似的方法来解决启动时的依赖关系?
【问题讨论】:
标签: dependency-injection unity-container
我正在使用依赖注入和 Unity 容器开发 MVC4 应用程序。我可以通过在 Web 项目中实现 IDependencyResolver 类来解决依赖关系。在支持类库中是否有类似的方法来解决启动时的依赖关系?
【问题讨论】:
标签: dependency-injection unity-container
在支持类库中是否有类似的方法来解决启动时的依赖关系?
直接调用容器或外观(例如DependencyResolver)是一种称为Service Locator pattern的模式,在Dependency Injection in .NET和Dependency Injection Principles, Practices, and Patterns这本书中都描述为an anti-pattern。
因此,不要从类库项目中的类中调用服务定位器,而是使用dependency injection pattern 在其构造函数中注入类所需的所有依赖项。
【讨论】:
Application_Start 事件)。这个独特的地方被称为Composition Root。