C# 通过反射获取枚举类型
文章目录
- 问题
- 反射获得的多余字段
问题
- 问题是这样的,我要在枚举类型上面加上
ShowName
的特性,这样就可以在编辑器里面显示友好的文本,而不是枚举的英文名称
//该接口可以获得该枚举类型的所有值, 也是属于该UnitType类型的
Enum.GetValues(typeof(UnitType))
//该接口获得的是定义时的名称,例如None,Hero,Summoned
var names = Enum.GetNames(typeof(UnitType))
//在System.Reflection命名空间下面有GetCustomAttribute<T>()
Type curType = typeof(UnitType)
var showNames = (from n in nameslet field = curType.GetField(n)let showName = field.GetCustomAttribute<ShowNameAttribute>()select showName.?Name??n).ToArray()
反射获得的多余字段
- 因为枚举类型的本质是上面这样的,所以通过反射获取所有字段的时候会有一个
value
类型
foreach(var field in typeof(UnitType).GetType().GetFields())
{}
所以通过static|public对字段进行筛选也是可以的,这个链接就是这种做法
C# 通过反射获取枚举类型相关推荐
- Java笔记-通过反射获取枚举类型中所有数据
程序运行截图如下: 代码如下: Em.java package cn.it1995;public enum Em {ONE(1, "第一个枚举"),TWO(2, "第二个 ...
- 获取枚举类型的 中文 描述 和值
C# 通过Attitude特性来实现,相对方便些 namespace Extensions {/// <summary>/// 定义枚举扩展类/// </summary>pub ...
- .net工具类 获取枚举类型的描述
一般情况我们会用枚举类型来存储一些状态信息,而这些信息有时候需要在前端展示,所以需要展示中文注释描述. 为了方便获取这些信息,就封装了一个枚举扩展类. /// <summary>/// 枚 ...
- 获取枚举类型的名字字符串的方法
C++版 总之就是查表法了. 代码例子如下. #include <stdio.h> typedef enum { SUN, MON, TUE, WED, THU, FRI, SAT, } ...
- java获取枚举的值_JAVA枚举Enum,通过枚举值获取枚举类型
枚举类: import java.util.Optional; public enum PurchaseDemandEnum { YJJSL(1,"研究技术类"), XTGCL(2 ...
- java反射 获取参数类型_Java反射带参构造创建对象时如何自动转换参数类型
需求是这样的:有一个类,类的路径知道,例如是com.xx.xx.xx其中有不同类型的成员变量(个数未知),有对应的setter和getter方法,有一个无参构造和一个全参构造.现在需要用反射机制... ...
- C# 获取枚举类型描述Description值
代码 /// <summary>/// 获取当前枚举描述/// </summary>/// <param name="enumValue">&l ...
- Java-使用反射获取类型信息
2019独角兽企业重金招聘Python工程师标准>>> 一个简单类的例子 在这个类中,有普通的String类型,有数组类型,有带泛型的List类型,有嵌套List类型,以及有多个泛型 ...
- Java并发:五种线程安全类型、线程安全的实现、枚举类型
点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/u014454538/ article/details/98515807 1. Java中的线程安全 Java线程安全:狭义地认 ...
- 【Java】反射、枚举、Lambda表达式
一.反射 1 定义 2 用途(了解) 3 反射基本信息 4 反射相关的类(重要) 4.1 Class类(反射机制的起源 ) 4.1.1 Class类中的相关方法(方法的使用方法在后边的示例当中) 4. ...
最新文章
- 剑指offer:面试题27. 二叉树的镜像
- mysql语句生成工具_强烈推荐一款MySQL语句优化辅助工具,值得收藏
- HTTP Host 头攻击,是什么鬼?
- 初学者必备的数组相关知识点
- ARM64的启动过程之(五):UEFI
- String定义字符串,实际操作
- ccf json解析 java,【求助】e4a json解析 求助大佬帮忙老看下怎么取?
- Android Flash分区大小查看
- 第四章信息系统安全基础考试要点及真题分布
- 【Python3网络爬虫开发实战】1.5.2-PyMongo的安装
- Web渗/透/攻/击实战(1)—成功渗/透台湾某净化设备公司官网
- 模版 ----- DP
- html5盒子层级设置,解决CSS中子元素z-index与父元素兄弟节点的层级问题
- Ubuntu18.04安装BeyondCompare
- 定时任务 Wpf.Quartz.Demo.3
- 如何设置GridView的列宽
- 一款安全性测试工具Appscan
- 二极管 三极管 mos管
- 老路《用得上的商学课》学习开篇(自序)
- 40个超有趣的Linux命令行彩蛋和游戏