目前我使用一個通用接口聲明的IoC依賴這樣的:設計,可以「實現N次」
public interface IComposition<T>
{
T Dependency { get; set; }
}
可是偏偏我的實現可以有在同一時間超過一個依賴。
我知道這很荒謬,但只是爲了你們明白我需要什麼... 假設我實現接口多次以解決我的問題:
public class MyClass : IComposition<TypeA>, IComposition<TypeB>
{
...
}
我相信使用IComposition<T1, T2, ...>
或一個ITypeXDependent
對於每種類型都不是很好的選擇。 我的核心需要在運行時使用反射來解決依賴關係。所以,這就是爲什麼我不通過構造函數傳遞依賴關係。
有誰知道一些可以幫助我的技巧嗎?
你爲什麼不能簡單地實現該接口多次,因爲你已經說明? –
這種界面的原因似乎完全避開了我。你爲什麼想要這樣的東西? –
另外,你有沒有考慮通過構造函數注入你的依賴,而不是接口繼承?無論如何,在測試過程中處理和使用會更容易。 –