艺海无涯,学无止境。欢迎一起探讨研究技术。

Asp.net .net(C#) 获取当前命名空间,类名,方法名

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";     
 
    StackTrace ss = new StackTrace(true);
    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;
}
 
public static void Main()
{
    Console.WriteLine(GetMethodInfo());
 
    Console.ReadKey();
}