2

tl;博士版本:nameof(ToCelsius)返回ToCelsius。不过,我想要一些返回底层函数名称的东西ToCelsiusByA

因此,我ToCelsius被分配了一个具体的实现:

 Func<decimal,decimal> ToCelsius = ToCelsiusByA;

然后我调用该ToCelsius函数:

var degreesC = ToCelsius(degreesF);

我想ToCelsiusByA返回已实现函数 ( ) 的名称,所以我正在尝试这个:

Console.WriteLine(degreesF + " degrees F is " + degreesC + " degrees C! using " + nameof(ToCelsius));

但是,当然,这会在字符串中显示“ToCelsuis”。

4

1 回答 1

4
Console.WriteLine(theDelegate.Method.Name);

但请注意:这不适用于涉及委托的一系列场景,例如组合委托或 lambdas / 匿名方法。

于 2017-12-07T17:52:02.860 回答