C# String representation of method
Asked Answered
I

2

6

Is there a way in .NET 3.0 (or earlier) to get a string representation of a method? I know that I can get an IL byte array from a MethodBody object, but I'm interested in getting a string that essentially represents the method body as it appears to my eyes in VS.

I've poked around in the CodeDom namespace to see if there was a way to convert methods to CodeMemberMethods at runtime, but I've come up dry so far.

Any thoughts?

Increasing answered 25/6, 2009 at 14:0 Comment(0)
M
12

That is very complex work. Basically, you'd be looking at re-writing reflector in your code... and don't forget that not all IL can be reversed.

The short answer is "no, nothing built in".

Even expression trees (from lambdas) can't be fully reversed back to appropriate strings easily.

Margarito answered 25/6, 2009 at 14:2 Comment(0)
S
2

Try poking around with reflector API (you might want to check if that is still available after Red Gate took it over).

Still even if you succeed you will loose some of the original information like local variable names, comments or some formatting.

Basically everything that is thrown away during compilation is lost for good.

Senary answered 25/6, 2009 at 14:37 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.