获取方法的值将itSelf命名为字符串

时间:2012-08-28 06:58:08

标签: c# syntax methods

我正在尝试输出方法及其操作的日志,如果采用并将结果导入“MyAppLog_ListView”lisftview的columnsHeaders

Record#______MethodName__________MethodsOutput

1      ______GetCurrentTime______success(21:10)
2      ______DoSplitString_______faild(not in right Format)
3......................................etc'...

这有助于我调试我的程序,因为它超过1500行代码并且至少对我而言 它变得有点过于复杂,问题是在字符串

中存储方法名称的正确方法是什么
public void MyMethod()
{
      do stuff 

       if (comleted) MyAppLog_ListView_AddRecord(string for the methods name, outputSucces)
       else if (faild) MyAppLog_ListView_AddRecord(string for the methods name, outputFail)


}

如何获取MyMethod()。存储在字符串中的名称?

  • ReEdit:

    关于SidAhmeds答案:

     public void MyMethodName()
    
        {
              do stuff 
    
             string Mnam = MethodBase.GetCurrentMethod().Name;
               if (comleted) MyAppLog_ListView_AddRecord(Mnam , outputSucces);
               else if (faild) MyAppLog_ListView_AddRecord(Mnam , outputFail);
    
    
        }
    

2 个答案:

答案 0 :(得分:2)

或者你可以使用反射来做到这一点:

System.Reflection.MethodBase.GetCurrentMethod().Name;

答案 1 :(得分:1)

StackTrace st = new StackTrace();
var methodName = st.GetFrame(0).GetMethod().Name;