zoukankan      html  css  js  c++  java
  • c# 获取方法所在的命名空间 类名 方法名

    平时我们在记录日志的时候难免会需要直接记录当前方法的路径,以便查找,但是每次都输入方法名称非常的繁琐,同时如果修改了方法名称也要去手动修改日志内容,真的是劳命伤财啊,所以有了如下方法则可解决我们的大难题啊,闲话少说,直接上代码如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Diagnostics;
    using System.Reflection;
    
    namespace GetMethodNameSpace
    {
        class Program
        {
            public static string GetMethodInfo()
            {
                string str = "";
                //取得当前方法命名空间
                str += "命名空间名:" + System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Namespace + "
    ";
                //取得当前方法类全名
                str += "类名:" + System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName + "
    ";
                //取得当前方法名
                str += "方法名:" + System.Reflection.MethodBase.GetCurrentMethod().Name + "
    ";
                str += "
    ";
    
                StackTrace ss = new StackTrace(true);
                MethodBase mb = ss.GetFrame(1).GetMethod();
                //取得父方法命名空间
                str += mb.DeclaringType.Namespace + "
    ";
                //取得父方法类名
                str += mb.DeclaringType.Name + "
    ";
                //取得父方法类全名
                str += mb.DeclaringType.FullName + "
    ";
                //取得父方法名
                str += mb.Name + "
    ";
                return str;
            }
    
            public static void Main()
            {
                Console.WriteLine(GetMethodInfo());
    
                Console.ReadKey();
            }
        }
    }

     提取公共方法如下:

  • 相关阅读:
    关于托管存储过程的部署, 调试和性能
    Fast Fourier Transform in C# (CookyTurkey)
    The Story of Lena(.tiff)
    反射之反思(转)
    分享Oracle9i中建立自增字段的最新办法
    C#操作注册表
    Oracle服务器的常用命令行详细讲解
    为汶川受灾群众祈福!!!!!
    新的开始,新的起点
    完全删除Oracle数据库的方法
  • 原文地址:https://www.cnblogs.com/duanjt/p/5462798.html
Copyright © 2011-2022 走看看