Dependency injection 什么';有了IoC和循环参考,这是解决这个问题的最佳设计

Dependency injection 什么';有了IoC和循环参考,这是解决这个问题的最佳设计,dependency-injection,unity-container,ioc-container,circular-reference,Dependency Injection,Unity Container,Ioc Container,Circular Reference,我会尽量用简单的方式解释 我有一个包含4个项目的解决方案(c#4.0) 框架 达尔 领域 网络应用 所以我的问题是: 框架是配置Unity IoC的正确位置吗?我想通过代码而不是xml进行配置,所以框架需要知道DAL的引用,但DAL已经知道框架 我所有的项目都知道框架,所以我在哪里配置IoC?应用程序应该在合成根目录中配置,该目录尽可能靠近入口点。在您的情况下,这将是WebApplication。这是唯一一个应该引用Unity的项目。其他任何项目都不应提及统一 在composition根目录

我会尽量用简单的方式解释

我有一个包含4个项目的解决方案(c#4.0)

  • 框架
  • 达尔
  • 领域
  • 网络应用
所以我的问题是:

框架是配置Unity IoC的正确位置吗?我想通过代码而不是xml进行配置,所以框架需要知道DAL的引用,但DAL已经知道框架


我所有的项目都知道框架,所以我在哪里配置IoC?

应用程序应该在合成根目录中配置,该目录尽可能靠近入口点。在您的情况下,这将是WebApplication。这是唯一一个应该引用Unity的项目。其他任何项目都不应提及统一

在composition根目录中,您应该遵循以下模式

另请参见-它谈论Ninject而不是Unity,但概念(以及答案)是相同的