C#-枚举的key值获取枚举name名称-OK

2018年02月28日 14:08:49 djk8888 阅读数 9559

目录

根据数值获取枚举的Name
获取枚举key值:
//判断key值是否存在于枚举中:
//取int值:
//取string值

public enum SubjectEnum {
        语文 = 1,
        数学 = 2,
        英语 = 3,
        物理 = 4,
        化学 = 5,
        地理 = 6,
        生物 = 7,
        历史 = 8,
        政治 = 9,

}

根据数值获取枚举的Name

public string GetEnumNameByKey(int key){
    return Enum.GetName(typeof(SubjectEnum), key);
}
string str = Enum.GetName(typeof(SubjectEnum), key);//若key=6,则str="地理";

 

获取枚举key值:

int key = (int)SubjectEnum.英语;//则 key=3;

判断key值是否存在于枚举中:

bool  b = Enum.IsDefined(typeof(SubjectEnum), key);
//若key=10,则b=false;

取int值:

int i = (int)SubjectEnum.数学;

取string值:

string str = SubjectEnum.数学.ToString();

 

 

前台Post过来一个string类型的int值,"1","2",然后实体对象是一个Enum枚举类型,所以需要根据该数值的string获取到这个Enum枚举对象的值。

EnumItems enumItem = (EnumItems)Enum.Parse(typeof(EnumItems), ddl.SelectedValue)
qc.State = (OrderQcState)Enum.Parse(typeof(OrderQcState), qc.Result);

很简单,使用Enum.Parse方法解决。

 

posted @ 2019-07-25 17:03  grj001  阅读(267)  评论(0编辑  收藏  举报