5

我想知道在类库中实例化城堡 Windsor 容器的最佳位置在哪里。

我应该简单地在我正在使用的类的构造函数中执行它,还是我不知道的程序集有一个入口点?

谢谢。

4

2 回答 2

7

注入对象图的配置完全取决于实际使用它的应用程序的需求。使用容器的目的是能够在运行时配置依赖项——一个库不知道将如何使用它。

库类的编写方式应该允许您使用您喜欢的任何容器,或者消费者认为合适的穷人依赖注入。将库耦合到容器是一种气味。

于 2012-05-11T08:51:05.900 回答
6

我可能会说你不应该直接在你的类库中使用容器。您的类库应该在库中的类之间具有依赖关系。应用程序(应用程序图的前端/根)将使用容器来解析所有依赖项,包括那些到您的类库中的依赖项。恕我直言,IoC在类库中使用类似于 ServiceLocator。

于 2012-05-11T07:59:45.753 回答