Heim > Backend-Entwicklung > C++ > Können anonyme Klassen in generischen C#-Listen gespeichert werden?

Können anonyme Klassen in generischen C#-Listen gespeichert werden?

Patricia Arquette
Freigeben: 2025-01-04 12:19:36
Original
889 Leute haben es durchsucht

Can Anonymous Classes Be Stored in C# Generic Lists?

Anonyme Klassen in generischen Listen

In C# 3.0 haben Sie die Flexibilität, anonyme Klassen mithilfe der Syntax zu definieren:

var o = new { Id = 1, Name = "Foo" };
Nach dem Login kopieren

Eine häufige Frage stellt sich, ob es möglich ist, diese anonymen Klassen in einer generischen Liste zu speichern. Lassen Sie uns dieses Problem untersuchen.

Betrachten Sie das folgende Beispiel:

var o = new { Id = 1, Name = "Foo" };
var o1 = new { Id = 2, Name = "Bar" };

List list = new List();
list.Add(o);
list.Add(o1);
Nach dem Login kopieren

Ein alternatives Szenario beinhaltet das Hinzufügen anonymer Klassen innerhalb einer Schleife:

List<var> list = new List<var>();

while (...)
{
    ....
    list.Add(new { Id = x, Name = y });
    ....
}
Nach dem Login kopieren

Lösung:

Um dieses Problem zu lösen, können Sie einen Ansatz verwenden wie:

var list = new[] { o, o1 }.ToList();
Nach dem Login kopieren

Alternativ können Sie Typinferenz mit generischen Methoden verwenden:

public static List<T> CreateList<T>(params T[] elements)
{
    return new List<T>(elements);
}

var list = CreateList(o, o1);
Nach dem Login kopieren

Durch die Implementierung dieser Techniken können Sie anonyme Klassen innerhalb generischer Listen effektiv verwalten.

Das obige ist der detaillierte Inhalt vonKönnen anonyme Klassen in generischen C#-Listen gespeichert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage