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?

2 Answers 2

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.

Sign up to request clarification or add additional context in comments.

Comments

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.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.