利用反射获取静态类的静态属性值(已知属性名称的字符串表示)

列如获取Phone属性的值

typeof(ExcelColumnName).GetProperty(“Phone”).GetValue(null, null)//ExcelColumnName是静态类

 ExcelColumnName类如下:

 1 /// <summary>
 2         /// 要上传的excel所包含的列
 3         /// </summary>
 4         public static class ExcelColumnName
 5         {
 6             public static string Phone { get; set; } = "手机号(必填)";
 7             public static string Name { get; set; } = "用户名(默认与手机号相同)";
 8             public static string RealName { get; set; } = "真实姓名";
 9             public static string CardNo { get; set; } = "身份证号";
10             public static string Referees { get; set; } = "推荐人";
11             public static string CreateTime { get; set; } = "报名日期(格式2016/1/2)";
12             public static string CompanyName { get; set; } = "工作单位";
13             public static string Email { get; set; } = "邮箱";
14 
15             public static List<string> ColumnList = new List<string>
16             {
17                 Phone,
18                 Name,
19                 RealName,
20                 CardNo,
21                 Referees,
22                 CreateTime,
23                 CompanyName,
24                 Email
25             };
26         }

 Ps:要特别注意的是静态字段如果是以下这样定义的话就获取不到了,原因是:这样的话Phone就不被认为是类的属性了,再通过反射取属性就去不到了,根本找不到这个属性

public static string Phone = "手机号(必填)";

  

转载于:https://www.cnblogs.com/dansediao/p/5774393.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值