Instantiating generic types with anonymous types
suggest changeUsing generic constructors would require the anonymous types to be named, which is not possible. Alternatively, generic methods may be used to allow type inference to occur.
var anon = new { Foo = 1, Bar = 2 };
var anon2 = new { Foo = 5, Bar = 10 };
List<T> CreateList<T>(params T[] items) {
return new List<T>(items);
}
var list1 = CreateList(anon, anon2);
In the case of List<T>
, implicitly typed arrays may be converted to a List<T>
through the ToList
LINQ method:
var list2 = new[] {anon, anon2}.ToList();
Found a mistake? Have a question or improvement idea?
Let me know.
Table Of Contents