0
讓我們在C#中說我已經被稱爲A類依賴屬性和構造函數的參數使用Unity
public class A : IInterfaceA
{
[Dependency]
B _b;
}
然後在B級我有這樣一個構造函數:
public class B
{
...
public B(string someParam) { ... }
...
}
現在,我註冊類一個這樣的:
_unityContainer.RegisterType<IInterfaceA, A>("RegistrationA");
,並解決我做的接口:
_unityContainer.Resolve<IInterfaceA>("RegistrationA", new ParameterOverride("someParam", "The param."));
現在我想知道是否是解決類和傳遞這樣的參數是好的做法,或者我應該以另一種方式做。 非常感謝:)
你好你好,謝謝你的回答! 我可以使用Unity自動工廠來實現您所寫的內容嗎? 我的意思是這樣的: '容器。RegisterType( 新InjectionFactory(C => 新函數功能(bParam =>新B(bparam))) );' 然後 '類BFactory { 私人Func鍵工廠; public BFactory(Func factory) { this.factory = factory; } public B Create(string bParam) { return factory(bParam); }' 然後註冊工廠並注入autofactory。 我不確定它是否可以編譯,因爲我現在無法測試它,但這就是我的想法。非常感謝 ! –
是的,這是一個選項。 – onof