Da der Name des anonymen Typs Compiler generiert wird, ist es auch durch Reflektion zugänglich?Sind anonyme Typen in C# durch Reflektion zugänglich?
9
A
Antwort
14
Ja. Soweit es das CLR/Framework betrifft, handelt es sich um normale Typen. In der Tat, können Sie einige interesting things mit Reflexion auf anonymen Typen tun ...
Die aktuelle C# Compiler tatsächlich einen obwohl generic Typen erzeugt, so dass zwei anonyme Typen, die beide nur eine „Foo“ Eigenschaft verschiedenen Typen haben teilen einen generischen Typ, haben aber verschiedene geschlossene Typen.
Verwandte Themen
- 1. C# - Erhalte benutzerfreundliche Namen einfacher Typen durch Reflektion?
- 2. Sind anonyme Typen außerhalb von LINQ sinnvoll?
- 3. VB.NET vs C#: Anonyme Typen und intellisense
- 4. Anonyme Typen klonen?
- 5. Umgang mit C-Bibliothek anonyme Struktur-Typen in C++
- 6. Anonyme Typen Alternative in Eloquent
- 7. Ermitteln abgeleiteter Typen mit Reflektion
- 8. Anonyme Typen erstellen!
- 9. anonyme Typen und Generika
- 10. IQueryable für anonyme Typen
- 11. Gleichheit für anonyme Typen
- 12. WCF und anonyme Typen
- 13. Anonyme Typen (Klassen-Features)
- 14. Wie sollten anonyme Typen in C# verwendet werden?
- 15. Übereinstimmende Typen mit Reflektion in .NET
- 16. Sind Zeiger primitive Typen in C++?
- 17. Arbeiten mit Anonyme Typen mit Linq in VB, C#
- 18. LINQ Anonyme Typen + MVC Ansichten
- 19. Gute Namenskonvention für anonyme Typen
- 20. Alle Typen in einem Namespace über Reflektion abrufen
- 21. ASP.NET, C# und anonyme Typen - Iterate durch eine DataTable beim manuellen Erstellen eines anonymen Typs
- 22. Was sind Nullable Typen in C#?
- 23. Reflektion in C++
- 24. Sind anonyme Funktionen erlaubt?
- 25. Abrufen von Typen in mscorlib 2.0.5.0 (aka Silverlight mscorlib) durch Reflektion an?
- 26. C# Anonyme Typen können nicht zugewiesen werden - es ist schreibgeschützt
- 27. C# Feature Anfrage: implementieren Schnittstellen auf anonyme Typen
- 28. Entfernen von Routingereignishandlern durch Reflektion?
- 29. Was sind die "Kosten" der .NET-Reflektion?
- 30. anonyme Delegierte in C#
Ich denke, der Compiler geben dem anonymen Typ einen Namen, bin ich richtig? – Benny
@Benny: Ja. Es gibt ihm einen * unaussprechlichen Namen * - einen, der für die CLR gültig ist, aber nicht für anderen C# -Code, also kann er keine Namenskollisionen einführen. –
Und sein Name soll * unaussprechlich sein * - lol – IAbstract