我想将当前正在运行的方法的名称写入日志。我知道我可以在写入日志的字符串中手动键入每个方法的名称,但是我想要更自动化和可重用的东西。我认为这可以通过反射来完成,但是我不知道从哪里开始。

有什么建议或代码示例吗?谢谢!

最佳答案

看一下System.Diagnostics.StackTrace类

System.Diagnostics.StackTrace st = new System.Diagnostics.StackTrace();
string methodName = st.GetFrame(0).GetMethod().Name;


请记住,这里会有性能成本。您将需要在性能敏感的代码中谨慎使用它。

10-06 03:31