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 }); ... }
これを実現するには、型推論を使用して、拡張メソッドまたはカスタム メソッドとしてのジェネリック メソッド。以下にいくつかの例を示します:
// Using an extension method var list = new[] { o, o1 }.ToList(); // Using a custom method public static List<T> CreateList<T>(params T[] elements) { return new List<T>(elements); } var list = CreateList(o, o1);
以上がC# で匿名クラスを汎用リストに追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。