2015-05-02 59 views
0

我想創建一個簡單的通用接口來將數據保存到集合並加載集合中的數據。以下哪一項(或無)是最合適的?保存/加載到集合的接口

集合可能有很多層次,這些細節會隱藏在界面後面。

選項A.

public interface ISaveToCollection<T,U> 
{ 
    void Save(T element); 
    U Data { get; } 
} 

public interface ILoadFromCollection<T,U,V> 
{ 
    U Load(T index); 
    V Data { get; } 
} 

選項B.

public interface ISaveToCollection<T> 
{ 
    void Save(T element); 
} 

public interface ILoadFromCollection<T,U> 
{ 
    U Load(T index); 
} 

public interface IHoldData<T> 
{ 
    T Data { get; } 
} 

選項C以上皆非(連同原因和替代)。

+0

你爲什麼要這麼做?我不確定「保存」,「加載」和「數據」是什麼意思,但「ICollection」接口已經爲您希望對集合執行的任何操作提供了完整的API。 –

+0

只需實現上面提到的集合接口,並且可以在實現類中隱藏所需的所有層和層。爲什麼要創建一個新界面? –

回答