C#Console.Writeline函数名称的占位符

时间:2012-02-22 22:37:41

标签: c# console.writeline

使用Console.Writeline()时,当前函数的名称是否有占位符?

4 个答案:

答案 0 :(得分:6)

在Reflection中,您可以选择MethodBase.GetCurrentMethod()。

答案 1 :(得分:6)

我相信这就是你要找的东西:

using System.Diagnostics;

StackTrace stackTrace = new StackTrace();
Console.WriteLine(stackTrace.GetFrame(1).GetMethod().Name);

答案 2 :(得分:2)

请参阅http://www.codeproject.com/Articles/7964/Logging-method-name-in-NET

另一个(更好)的日志记录选项是AOP,使用PostSharp等框架

答案 3 :(得分:1)

除非您想使用反射。但是,C#5将包含一个名为“Caller Info Attributes”的新功能,它将在编译时插入信息。见http://bartwullems.blogspot.com/2012/02/c-5-caller-info-attributes.html