2010-07-09 5 views
0

Quelqu'un peut-il s'il vous plaît expliquer pourquoi ce test échoue:Windsor: Est-ce que je me méprends complètement sur le fonctionnement des conteneurs pour enfants?

[Fact] 
    public void ResolveAllDoesNotReturnServicesRegisteredInParent() 
    { 
     // arrange 
     var windsorContainer = new WindsorContainer(); 

     windsorContainer.Register(Component.For<IView>().ImplementedBy<ViewA>().LifeStyle.Transient); 
     windsorContainer.Register(Component.For<IView>().ImplementedBy<ViewB>().LifeStyle.Transient); 

     var childContainer = new WindsorContainer(); 

     windsorContainer.AddChildContainer(childContainer); 

     // act 
     IView[] views = childContainer.ResolveAll<IView>(); 

     // assert 
     Assert.True(views.Length == 2); 
    } 
+0

Vous pourriez être intéressé par ceci: http://kozmic.pl/archive/2010/06/02/castle-windsor-and-child-containers.aspx – Bronumski

Répondre

1

Et si vous résolvez de parent qui réussissent? Notez que ResolveAll résoudra uniquement les composants résolvables.

+0

Eh bien, c'était embarrassant. J'ai manqué une dépendance dans la configuration. – Marius