使用 LightInject 时,如何在初始注册/引导之外的上下文中访问容器实例?我按照 LightInject 的入门指南 和谷歌搜索,但没有找到类似的东西。
作为参考,我介绍了如何在其他两个 IoC 框架中实现这一点。
忍者
使用 Ninject 时,我习惯于将 IKernel 类型自动绑定到内核(LighInject 上的容器),因此具有如下构造函数的类:
public MyClass(IKernel kernel)
{
var myInstance = kernel.Get<IMyType>();
}
将能够使用内核来检索实例。
简单IOC
在使用 MvvmLight 自带的框架 SimpleIoC 时,可以使用静态属性(SimpleIoC.Default)来达到同样的目的:
var myInstance = SimpleIoc.Default.GetInstance<IMyType>();