2010-12-16 5 views
3

Ich habe eine Schnittstelle namens IStartable, die von mehreren Betonen implementiert wird. Alle sind unter UnityContainer mit RegisterType ohne Namen registriert.Alle auflösen, ohne Namen zu verwenden

Was ich versuche zu erreichen ist:

_container.ResolveAll<IStartable>().ForEach(startable => startable.Start()); 
//application lifetime 
_container.ResolveAll<IStartable>().ForEach(startable => startable.Stop()); 

Wie kann ich erreichen, dass alle Anmeldungen, ohne zu nennen?

Antwort

5

Nach meinem Wissen können Sie nicht. Sie müssen alle Registrierungen benennen.

Tatsächlich sehen here:

5: Wenn Sie mehr als eine Registrierung mit dem gleichen registrierten Typ erstellen möchten, können Sie einen Namen erstellen (Nicht-Standard) Registrierung von einen Namen spezifizieren als Parameter [...]

Verwandte Themen