As the name of the anonymous type is compiler generated, so is it accessible through reflection?
+5
A:
Yes. As far as the CLR/framework is concerned, they're normal types. In fact, you can do some interesting things with reflection on anonymous types...
The current C# compiler actually creates a generic type though, so that two anonymous types which both just have a "Foo" property of different types will share a generic type, but have different closed types.
Jon Skeet
2010-02-10 06:33:16
I guess the compiler give the anonymous type a name, am i right?
Benny
2010-02-10 06:38:15
@Benny: Yes. It gives it an *unspeakable name* - one which is valid to the CLR, but not to other C# code, so it can't introduce naming collisions.
Jon Skeet
2010-02-10 07:01:56
And it's name shall be *unspeakable* - lol
dboarman
2010-02-10 07:38:39