J'utilise la lumière MVVM et ont mis en place la liaison comme suit:Ninject injectent ajouter un élément à la collection lorsque je crée la collection
class TestModule:NinjectModule
{
public override void Load()
{
Bind<ICollection<Element>>().To<Collection<Element>>();
Bind<Element>().ToSelf();
}
}
Lorsque je tente d'obtenir un ICollection je reçois une collection avec ONE élément. Je m'attends à une collection d'exmpty.
var _kernel = new StandardKernel(new TestModule());
var col = _kernel.Get<ICollection<Element>>();
Console.WriteLine("Count={0}", col.Count); //Write "Count=1", Expect "Count=0"
C'est exaspérant, contre-intuitif et totalement inutile! Il semble n'y avoir aucun moyen évident de forcer Ninject à injecter des collections vides dans un type. Je ne veux pas ** un objet factice dans la collection! Faites comme on vous le dit, Ninject! –