4

我会尽量以简单的方式解释。IoC和Circular Reference的最佳设计是什么

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

  • 框架
  • DAL
  • WebApplication的

所以我的问题是:

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

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

回答

4

应该在组合根中配置应用程序,它尽可能接近入口点。在你的情况下,这将是WebApplication。这是唯一的项目,应该有一个参考Unity。根本没有任何其他项目应该提及Unity。

在组合根中,您应该遵循Register Resolve Release模式。

另请参见this answer - 它谈论Ninject而不是Unity,但概念(因此答案)是相同的。

相关问题