In C# 3.0 bieten anonyme Klassen eine praktische Möglichkeit, leichtgewichtige Objekte mit dynamisch generierten Eigenschaften zu erstellen. Es stellt sich jedoch die Frage: Können diese anonymen Klassen in generische Listen integriert werden?
Um dieses Problem zu beheben, haben Sie einige Möglichkeiten:
Initialisierungsarray: Sie können ein anonymes Klassenarray erstellen und es dann mit der Methode .ToList() in ein umwandeln Liste.
var list = new[] { o, o1 }.ToList();
Generische Methode mit Typinferenz: Durch die Verwendung einer generischen Methode können Sie die explizite Angabe des Listentyps vermeiden.
public static List<T> CreateList<T>(params T[] elements) { return new List<T>(elements); } var list = CreateList(o, o1);
Lassen Sie uns einige Arbeitsschritte bereitstellen Beispiele:
// Example 1: Adding to an Existing List var list = new List<dynamic>(); list.Add(new { Id = 1, Name = "Foo" }); list.Add(new { Id = 2, Name = "Bar" }); // Example 2: Populating a List in a Loop var list = new List<dynamic>(); while (...) { list.Add(new { Id = x, Name = y }); }
In diesen Szenarien werden die anonymen Klassen effektiv zur generischen Liste hinzugefügt. Bitte beachten Sie, dass der Typ der Liste dynamisch bleibt und das Hinzufügen anonymer Klassen mit unterschiedlichen Eigenschaftssätzen ohne Typvalidierung ermöglicht.
Das obige ist der detaillierte Inhalt vonKönnen anonyme Klassen zu generischen Listen in C# hinzugefügt werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!