我有一個這樣的接口:提供委託來解決註冊開仿製藥Autofac
ICreator<T> {}
我想要做的就是讓用戶解決這樣的依賴性:
var creator = container.Resolve<ICreator<IUser>>();
的訣竅是我希望能夠爲ICreator<T>
做一些自定義創建的具體類型。在我的情況下,我有一個Creator<T, TConcrete>
帶有一個構造函數,該類型的泛型使用TConcrete
。按照慣例,我知道TConcrete
應該給T
定義ICreator
的類型,但RegisterGeneric
看起來不像它給我我需要什麼,這是創建Creator<,>
實例的代表。
或者這可能存在於Autofac中,我錯過了它?任何有識之士將不勝感激 - TIA。
我不認爲這就是我要找的。我想要指定'ICreator',並返回'Creator ',其中'Creator '實現'ICreator '。我可以在代碼中手動執行此操作 - 但是我無法找到在Autofac中註冊這種配置的方法。 –
JasonBock
2013-02-22 14:03:46
工作的一件事是鉤住OnActivating並調用ReplaceInstance。這幾乎是我正在尋找的東西,但是它有一個小的負面工件,它將創建一個我在'RegisterGeneric'中提供的泛型類型的實例,我將會替換它。 – JasonBock 2013-02-22 15:22:20