How to get the name of current function? [duplicate]

泄露秘密 提交于 2019-12-03 04:30:36

问题


Possible Duplicate:
Can you use reflection to find the name of the currently executing method?
C# how to get the name of the current method from code

For example:

void foo() {
    Console.Write(__MYNAME__);
}

print: foo

it's possible do it in C#?


回答1:


Try this:

System.Reflection.MethodBase.GetCurrentMethod().Name 



回答2:


You can check the stack trace

using System.Diagnostics;

// get call stack
StackTrace stackTrace = new StackTrace();

// get calling method name
Console.WriteLine(stackTrace.GetFrame(0).GetMethod().Name);

But beware, if the method is inlined you get the parent method name.



来源:https://stackoverflow.com/questions/10130504/how-to-get-the-name-of-current-function

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!