Pergunta

How get a source code of anonymous method?

For example:

Func<Boolean> func = (() => DateTime.Now.Seconds % 2 == 0);

Console.WriteLine(GetSourceCode(func)); // must: DateTime.Now.Seconds % 2 == 0

String GetSourceCode<T>(Func<T> f) - ???
Foi útil?

Solução

You can wrap it inside Expression and call ToString() on it and that will get you the source code.

Like this:

Expression<Func<Boolean>> func = (() => DateTime.Now.Seconds % 2 == 0);
var str = func.ToString();

The output str becomes () => DateTime.Now.Seconds % 2 == 0

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top