RegisterInstance与Unity中的延迟实例化

时间:2016-03-14 16:04:08

标签: c# unity-container

我在.NET中有一个(非常标准的)单例对象(它具有受保护的构造函数和Instance属性)。

我需要在Unity容器中注册它的实例,所以我打电话给

container.RegisterInstance<IFoo>(FooSingleton.Instance);

但是我想避免在容器注册方法中实例化(如果需要,只将其调用),因为有可能不需要它并且它的初始化是扩展的。

有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:1)

您可以使用int按需创建实例,使用InjectionFactory将其设为单身:

ContainerControlledLifetimeManager