本帖最后由 testcs_dn 于 2011-11-13 09:35:13 编辑

解决方案 »

  1.   


           static void a2()
            {
                StackFrame frame = new StackFrame(1);       //偏移一个函数位,也即是获取当前函数的前一个调用函数
                MethodBase method = frame.GetMethod();      //取得调用函数
                Console.WriteLine(method.Name);  //a1
            }        static void a1()
            {
                a2();
             }
      

  2.   


    StackTrace StackFrame 之类的都看过了,只能得到方法名称,但得不到方法有哪些参数,以及参数类型,当前调用传入的参数值
      

  3.   

    用反射比较方便 Type.GetPropertities(); 属性  Type.GetMethods();方法。
      

  4.   


    嗯,Type.GetMethods();方法 值得深入研究一下。以前只是简单的用用。
      

  5.   

    static void a2()
            {
                StackFrame frame = new StackFrame(1);       //偏移一个函数位,也即是获取当前函数的前一个调用函数
                MethodBase method = frame.GetMethod();      //取得调用函数
                Console.WriteLine(method.Name);  //a1
            }
     
            static void a1()
            {
                a2();
             }直接
        static void a1()
        {
          string aa = MethodBase.GetCurrentMethod().Name;
          Console.WriteLine(aa);
        }