C#把一个局部变量名转换成字符串

.Net技术 码拜 9年前 (2015-11-12) 3388次浏览
string strTemp=3;
本人想获取的strTemp的名称“strTemp”,而不是strTemp的值3,谢谢,C# 5.0,不能用C#6.0的NameOf
解决方案:40分
网上找到了一个,还真的可以

public static void Main(string[] args)
        {
            string abc="123";
            //调用
            string result = GetVarName(p => abc);
            Console.WriteLine(result);
            Console.ReadLine();
        }
        //获取方法
        public static string GetVarName(System.Linq.Expressions.Expression<Func<string, string>> exp)
        {
            return ((System.Linq.Expressions.MemberExpression)exp.Body).Member.Name;
        }

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C#把一个局部变量名转换成字符串
喜欢 (1)
[1034331897@qq.com]
分享 (0)