0
使用Unity,你可以因此它解決了一些參數類型註冊一個接口,並且還可以有一個名爲註冊:註冊了一個名爲默認註冊
container.RegisterType<IInterface, MyClass>(
new InjectionConstructor(new ResolvedParameter<string>("Default"))
);
container.RegisterType<IInterface, MyClass>(
"Named First",
new InjectionConstructor(new ResolvedParameter<string>("Named First"))
);
container.RegisterType<IInterface, MyClass>(
"Named Second",
new InjectionConstructor(new ResolvedParameter<string>("Named Second"))
);
比方說,我希望我的默認註冊做同樣的作爲「命名第二」註冊。我能做到這一點:
container.RegisterType<IInterface, MyClass>(
new InjectionConstructor(new ResolvedParameter<string>("Named Second"))
);
有沒有辦法有,而不是複製整個事情的默認(未命名?)註冊點朝着第二個命名註冊,?喜歡的東西:
container.RegisterType<IInterface, IInterface("Named Second")>(); // Doesn't work.
在這個例子中,它只有一個參數的構造函數,但是我們要說的構造函數有8個接口,2個InjectionProperties和InjectionMethod,你不會想重複的是,冒着不同步。
看起來很健康。我害怕在「註冊時間」解析界面,但我不知道爲什麼我沒有考慮使用lambda表達式。我明天會進行測試,但我沒有看到有什麼理由不起作用。 – Tipx 2014-12-05 04:28:28
工作很好,謝謝先生! – Tipx 2014-12-05 16:26:26