7
我所限定的本方法:通用方法和轉換:如何定義類型1可轉化爲2型
public static List<T2> ConvertList<T1, T2>(List<T1> param) where T1:class where T2:class
{
List<T2> result = new List<T2>();
foreach (T1 p in param)
result.Add((T2)p);
return result;
}
對於類型1的解釋轉換成類型的詞典2.
不幸的是我忘,即C#編譯器不能在這個階段,T1
可轉換爲T2
說,所以它拋出錯誤:
error CS0030: Cannot convert type T1 to T2
有人能告訴我該怎麼辦呢親佩爾利?我現在只需要這種方法將自定義類的列表轉換爲列表object
,因此在.NET中,所有東西都來自object
它應該可以工作。
基本上我所期望的是一些語法告訴編譯器T2(object
)爲基地,爲T1(MyClass
),所以像:
public static List<T2> ConvertList<T1, T2>(List<T1> param) where T2: base of T1
(... 其中T2:T1基地)
使用'其中T2:T1'。 – Abion47
@ Abion47感謝您展示方向,但我想你想說'在哪裏T1:T2' –
也許吧。你的措辭有點令人困惑,你希望它走向哪個方向。 – Abion47