2010-12-16 56 views
3

我得到了一個名爲IStartable的接口,它由多個混凝土實現。全部使用RegisterType註冊到UnityContainer,沒有名字。解決所有不使用名稱

我想要實現的是:

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

我怎樣才能做到這一點,而不必說出所有註冊?

回答

5

據我所知,你不能。你需要命名所有註冊。

事實上,看到here

5:如果你想創建一個使用相同的註冊 類型不止一個註冊,您可以創建一個名爲 (非默認)註冊通過 指定名稱作爲參數[...]

相關問題