这些天在查看 Kephas 框架时,我注意到它提供了自己的依赖注入容器。现在市场上有这么多依赖注入框架,为什么要自带自己的实现呢?这不就是重新发明轮子吗?
Kephas 本身不提供 DI/IoC 容器,它仅提供 DI/IoC 容器之上的抽象层,以便它可以使用组合本身,而无需绑定到特定的实现。它所提供的是这个抽象层的适配器System.Composition
在 Kephas.Composition.Mef 包中(https://www.nuget.org/packages/Kephas.Composition.Mef/ https://www.nuget.org/packages/Kephas.Composition.Mef/)。我们还计划了一个适配器Autofac
但我们没有时间去实现它。
请注意,这个抽象层确实具有 Kephas 独有的一些功能:
- 注册的服务实现可以被覆盖,以利用分层应用程序架构。
- 服务契约/接口通过以下方式驱动注册
[*AppServiceContract]
属性。
另请注意,元数据支持是 Kephas 集成的 DI 框架的必需功能,在某些情况下可能会施加限制。欲了解更多信息,您可以在这里阅读:https://github.com/kephas-software/kephas/wiki/Composition-and-Dependency-Injection https://github.com/kephas-software/kephas/wiki/Composition-and-Dependency-Injection.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)