Самое простое решение, которое я вижу, - предоставить конструктору ChildContainer родительский контейнер и вызвать метод CreateChildContainer () в ctor:
public class ChildContainer2 : IChildContainer
{
private IUnityContainer _container;
public ChildContainer(IUnityContainer parent)
{
_container = parent.CreateChildContainer();
}
public IUnityContainer Container { get { return _container; } }
}
Но почему вы хотите сделать дочерний контейнер сервисом? Разве не было бы лучше, если бы каждый компонент в вашем приложении сам создавал дочерний контейнер, если он ему нужен?