dependency-injection - Windsor 能否与另一个 IoC 容器合作?

标签 dependency-injection castle-windsor

在我们应用程序的核心中,我们使用 CaSTLe Windsor 来管理我们的依赖项。我们将从可能使用自己的 IoC 容器的第三方加载插件。我们希望他们能够从核心接收依赖项,例如通过构造函数注入(inject)核心的服务,还可以从自己的 IoC 容器中接收依赖项。

似乎如果他们提供了一个服务提供商接口(interface),Windsor 可以使用它来解决未知的依赖关系,忽略结果(因为这些组件的生命周期是其他人的业务)并继续运输。

但我也确信当你尝试这样的事情时会出现一些非常微妙的问题。

最佳答案

那没有必要。如果您启用这些插件以使用 构造函数注入(inject) 要从您的主机应用程序中获取适当的服务,CaSTLe Windsor 可以正确连接插件。插件只是使用构造函数注入(inject)作为 的一种方式。静态声明一个依赖 ,所以只要Windsor能解决依赖,PlugIn就会接收到。

每个插件内部发生的事情(包括使用其他容器)与宿主应用程序无关。

关于dependency-injection - Windsor 能否与另一个 IoC 容器合作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5987841/

相关文章:

c# - (接口(interface))检测到类型服务的循环依赖

c# - NET CORE - AddScoped类,实现许多接口(interface),并通过接口(interface)类型获取它们

java - Spring Beans 中的构造函数参数太多

c# - 为什么尝试在 Windsor .net core 中注册作用域组件时会发生 'Scope was not available' 错误?

c# - 为什么调用 WindsorContainer 的 AddComponent 时要使用 key 参数?

dependency-injection - 如何开始使用 ASP.NET (5) Core 和 CaSTLe Windsor 进行依赖注入(inject)?

c# - Asp.net Core IoC 类型工厂

asp.net-mvc - 如何使用 CaSTLe Windsor 实例化基于 web.config 文件的类?

c# - 使用 IoC 动态选择接口(interface)实现

java - @Resource注解产生NPE