我在努力編寫通用方法來保存和加載Sterling數據庫中的數據時掙扎。C#泛型和推理類型
這是我的拯救方法:
public static void SaveList<T>(List<T> listToSave)
{
foreach (T listItem in listToSave)
{
DatabaseInstance.Save(listItem);
}
}
我得到下保存彎彎曲曲的紅線和錯誤「的類型T必須是爲了用它作爲參數T引用類型」
這是我的加載方法:
public static List<T> LoadList<T>()
{
List<T> list = (from index in DatabaseInstance.Query<T, int>() select index.Key).ToList();
return list;
}
我得到相同的錯誤。
任何想法?
乾杯
史蒂夫
UPDATE:
我加了其中T:類的建議,並得到了一個錯誤:
t類必須有一個公共的無參數的構造函數,以用它作爲參數
按照Bryan提供的鏈接中的說明,我在最後添加了new(),現在所有工作都正常。
由於鏈接到通用類型約束信息而被選擇爲答案,這有助於進一步的錯誤。 –