有谁知道一组类来抽象出特定的依赖注入库(Spring、Castle、StructureMap、Ninject ......等)?
我们都使用 DI 容器来抽象出我们代码的特定实现,但我们也可以使用相同的接口/策略模式来使用特定实现(例如 Castle.Windsor、Unity... 等)编写基于通用接口的 DI 容器。
一般来说,从容器中“获取和对象”的基本模式是非常普遍的。例如:
IService service = IocContainer.Get<IService>();
其中 IocContainer 是围绕特定库实现(例如 Castle.Windsor、Unity... 等)的通用包装类。
当然,除了编写可以“插入”的特定实现之外,当然,每个实现都有自己的配置文件格式。
有人对 DI 容器的现有经过良好测试的包装类有建议吗?