У меня есть универсальный метод, который принимает Func<int>, и я хотел бы зарегистрировать Func, который передается в метод. Какие свойства доступны в переданном в func, чтобы помочь мне понять, что он делает?
Func<int>
Вы можете записать имя метода с помощью func.Method.Name, а в классе MethodInfo есть некоторые другие полезные свойства.Однако, если Func является анонимным, вы не получите очень полезное имя.
func.Method.Name
MethodInfo
Func
Как указал Jaroslav Jandek , используя Expression<Func<T>> Я могу получить больше информации о передаваемом методе. В частности: я обнаружил, что свойство body имеет сигнатуру анонимного метода в виде строки.
Expression<Func<T>>
body
http://msdn.microsoft.com/en-us/library/system.linq.expressions.lambdaexpression.body.aspx