Given a .NET type object found through reflection, is it possible to pretty print or decompile this type as a C# declaration, taking into account C# type aliases, etc.?
For example,
Int32 -> int
String -> string
Nullable<Int32> -> int?
List<au.net.ExampleObject> -> List<ExampleObject>
I want to be able to print out methods close to what was originally written in the source.
If there isn't anything in the .NET framework, is there a third-party library? I might possibly have a look at ILSpy.