泛型清單中的匿名類別
在C# 3.0 中,您可以靈活地使用以下語法定義匿名類別:
var o = new { Id = 1, Name = "Foo" };
一個常見的問題是是否可以將這些匿名類別儲存在泛型中清單。讓我們探討一下這個問題。
考慮以下範例:
var o = new { Id = 1, Name = "Foo" }; var o1 = new { Id = 2, Name = "Bar" }; List list = new List(); list.Add(o); list.Add(o1);
另一種情況是在循環中加入匿名類別:
List<var> list = new List<var>(); while (...) { .... list.Add(new { Id = x, Name = y }); .... }
解:
要解決此問題,您可以使用一種方法例如:
var list = new[] { o, o1 }.ToList();
或者,您可以使用泛型方法進行類型推斷:
public static List<T> CreateList<T>(params T[] elements) { return new List<T>(elements); } var list = CreateList(o, o1);
實作這些技術可以讓您有效地管理泛型清單中的匿名類別。
以上是匿名類別可以儲存在 C# 泛型清單中嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!