Heim > Backend-Entwicklung > C++ > Wie überprüfe ich, ob ein Objekt ein generischer Typ in C# ist?

Wie überprüfe ich, ob ein Objekt ein generischer Typ in C# ist?

Linda Hamilton
Freigeben: 2025-01-06 16:05:48
Original
398 Leute haben es durchsucht

How to Check if an Object is a Generic Type in C#?

So testen Sie, ob ein Objekt in C# vom generischen Typ ist

Frage:

Sie möchten überprüfen, ob ein Objekt zu einem generischen Typ gehört. Ihr Versuch, list.GetType() == typeof(List<>) zu verwenden, gibt jedoch false zurück. Wie können Sie diesen Test korrekt durchführen?

Antwort:

Bestimmen Sie den spezifischen Testtyp, den Sie benötigen:

Überprüfen der generischen Instanz Typ:

Um einfach zu überprüfen, ob das Objekt eine Instanz eines generischen Typs ist, Verwenden Sie:

return list.GetType().IsGenericType;
Nach dem Login kopieren

Überprüfung auf generische Liste:

Wenn Sie speziell überprüfen müssen, ob das Objekt eine Instanz von List ist:

return list.GetType().GetGenericTypeDefinition() == typeof(List<>);
Nach dem Login kopieren

Beachten Sie, dass der letztere Test die genaue Typäquivalenz prüft. Wenn das Objekt von List erbt oder eine generische Schnittstelle implementiert, gibt der Test false zurück.

Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob ein Objekt ein generischer Typ in C# ist?. 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