Я унаследовал экземпляр от класса UnityContainer
и хочу создать дополнительный экземпляр, который будет "наследовать" все регистрации предыдущего?
Правильно ли я понимаю, что метод AddExtension
делает то, что я ожидаю?
public class MyUnityContainer : UnityContainer
{
public MyUnityContainer(MyUnityContainer containerParent)
{
if ( containerParent!=null )
this.AddExtention(containerParent);
}
public static void Test()
{
MyUnityContainer cont1 = new MyUnityContainer();
cont1.RegisterType<IA,A>();
MyUnityContainer cont2 = new MyUnityContainer(cont1);
IA a = cont2.Resolve<IA>();
}
Должно ли это работать? Если нет, как можно достичь такой функциональности?
Я мог бы сделать MyUnityContainer
не унаследованным от UnityContainer
, но содержащим его («имеет» вместо «является»), но я не хочу реализовывать интерфейс IUnityContainer
в своем классе MyUnityContainer
.