我想用在运行时创建的另一个实例来更改注册的实例。
这可以是删除现有组件并重新注册新组件,或者只是将新创建的实例重新分配给已注册的组件。
Foo old = new Foo("asd");
IoC.Register(Component.For<IFoo>().Instance(old));
Foo new = new Foo("qwe");
IoC.Unregister(old); // RemoveComponent method is removed from IKernel after v3.0
IoC.Register(Component.For<IFoo>().Instance(new));
有没有办法做到这一点?请不要提出其他想法,例如“重新初始化您的 IoC 容器”等。