的名單我有一類自定義泛型泛型類
public class ID_Name<T>
{
public ID_Name(T id)
{
this.ID = id;
}
public T ID { get; set; }
public string Name
{
get
{
return Helper.SomeReturnValue;
}
}
}
所有我想要做的就是產生ID_NAME的自定義列表,我可以傳遞一個ID_Name.ID中添加參數。 我試過如下:
public class ID_Name_List<T> : IList<T> where T : ID_Name<T>
但後來我得到以下錯誤:
The type "EProtokollStatus" cannot be used as type parameter "T" in the generic type or method "ID_Name_List<\T>". There is no boxing conversion or type parameter conversion from "EProtokollStatus" in ID_Name<\EProtokollStatus>.
我讀到一些關於這個問題在這裏:No boxing or type parameter conversion for generic Type parameter,但我看不到的限制,除了ID_NAME這裏。 這在某種程度上可能是錯誤的,因爲我想表達的所有內容都是「在ID_Name_List中使用與ID_Name相同的類型T」,但我該如何實現這一點?
我在這裏找到了一些東西:C#: Declaring and using a list of generic classes with different types, how?但我不想爲所有可能的類型創建許多不同的類。
所有我想要實現的是類似
ID_Name_List<EProtokollStatus> myList = new ID_Name_List<EProtokollStatus>();
myList.Add(EProtokollStatus.ValueX);
是的,這就是我的意圖。非常感謝! – UNeverNo