3
我正在尋找一種方法來定義IDictionary<List<IInterface>, HashSet<IInterface>>
,以便對於每個鍵 - 值對實現IInterface
的類型是相同的。編譯時檢查字典輸入類型與接口的正確性
比方說,我有兩種類型T1
,T2
,執行IInterface
。
那麼它應該是可以添加一個鍵值對的類型
List<T1>
和HashSet<T1>
List<T2>
和HashSet<T2>
,但它不應該是可以添加的關鍵價值對
List<T1>
和HashSet<T2>
List<T2>
和HashSet<T1>
。
是否可以定義這樣一個字典,以便每當我嘗試添加一個禁用的鍵值對時都會收到編譯錯誤?如果是,如何?
我不在乎我是否需要一個或幾個新的類,接口等。我只是想知道原則上是否可行。