我在SM回購上發佈了an issue。可用於IHandler的StructureMap自動註冊處理程序<T><T>?
我的問題與this one類似,但我想本地化一個問題。
比方說,我有通用接口IPrinter<T>
及其通用實現Printer<T>
。當我做container.GetInstance<IPrinter<string>>
時,我希望StructureMap解決具體的封閉類型Printer<string>
。
明確登記工作確定在這裏:
container.Configure(r => r.For(typeof (IPrinter<>)).Use(typeof (Printer<>)));
不過掃描的東西失敗:RegisterConcreteTypesAgainstTheFirstInterface()
結果202 No Default Instance defined
StructureMap異常,當我試圖解決IPrinter<string>
。
有沒有一種方法可以完成我想要的行爲,而無需顯式配置?
謝謝!檢查更新,我說得更清楚。 '.For(typeof(IPrinter <>))。使用(typeof(Printer <>)'也可以,但我在尋找真正的自動註冊簡單案例的方法。只是一個泛型接口的一個(通用)實現 – vorou
@vorou - 我編輯了我的答案,看一看 – LetMeCodeThis
我知道明確的方法來做它我正在尋找的是*自動*我的意思是我想寫'RegisterConcreteTypesAgainstTheFirstInterface()'這一行。我不想列出我的應用程序中已註冊的所有通用類型。 – vorou