获取当前方法的名称空间、类名和方法名称

这里主要是用到了 System.Reflection.MethodBase 中的 GetCurrentMethod() 方法以及 DeclaringType 属性


public  static  string GetMethodInfo()

 {
            string str = "";

             //取得当前方法命名空间    
            str += "命名空间名:" + System.Reflection.MethodBase.GetCurrentMethod().DeclaringType. Namespace + "\n";

             //取得当前方法类全名 包括命名空间    
            str += "类名:" + System.Reflection.MethodBase.GetCurrentMethod().DeclaringType. FullName + "\n";

             //取得当前方法名    
            str += "方法名:" + System.Reflection.MethodBase.GetCurrentMethod(). Name + "\n"; str += "\n";

          

            //父方法

            System.Diagnostics.StackTrace  ss = new System.Diagnostics.StackTrace(true);
            System.Reflection.MethodBase  mb = ss.GetFrame(1).GetMethod();

             //取得父方法命名空间    
            str += mb.DeclaringType.Namespace + "\n";

            //取得父方法类名    
            str += mb.DeclaringType.Name + "\n";

            //取得父方法类全名    
            str += mb.DeclaringType.FullName + "\n";

            //取得父方法名    
            str += mb.Name + "\n"; return str;
 }

你可能感兴趣的:(String)