c#声明枚举,通过枚举int获取枚举value、通过枚举value获取int值、判断string值是否存在枚举中
1、声明枚举
每个枚举常量可以用一个标识符来表示,也可以为它们指定一个整数值,如果没有指定,那么默认从 0 开始递增。
注意:第一个枚举成员的默认值为整型的 0,后续枚举成员的值在前一个成员上加 1。我们在这个实例中把第一个枚举成员的值定义为 1,第二个就为 2,以此类推。
可以在定义枚举类型时改变枚举元素的值:
enum season {spring, summer=3, autumn, winter};
没有指定值的枚举元素,其值为前一元素加 1。也就说 spring 的值为 0,summer 的值为 3,autumn 的值为 4,winter 的值为 5
例如:
public enum RoomState_Enum
{
课, //0
自, //1
闲 //2
}
2、读取枚举值
读取是一个枚举类型的值,并且是他的key ;
比如:课就是获取到的是值1

3、根据获取枚举的可以读取它的value
/// <summary>
/// 枚举 int 转 枚举名称
/// </summary>
/// <typeparam name="T">枚举名</typeparam>
/// <param name="itemValue">int值,枚举key值</param>
/// <returns></returns>
private string ConvertEnumToString<T>(int itemValue)
{
return Enum.Parse(typeof(T), itemValue.ToString()).ToString();
}
例如:
获取到了“自”;
public enum RoomState_Enum
{
课, //0
自, //1
闲 //2
}
ConvertEnumToString<RoomState_Enum>(1);

参考文献:https://blog.csdn.net/dibr63585/article/details/102042477
二、通过枚举string读取value
#region 5.获取枚举值
//枚举的string值:例如上面例子 此方法传入name="课" 返回0
public static int ConvertEnumToInt<T>(string name)
{
return (int)Enum.Parse(typeof(T), name);
}
#endregion
三、判断string值是否存在枚举中
//是否存在标志 RoomState_Enum flag; //存在返回true 不存在为false //第一个参数就是要进行判断“课”是否存在枚举RoomState_Enum中 var ifhaveEnum = Enum.TryParse<RoomState_Enum>(“课”, true, out flag); //如果存在,那么flag就是对应枚举 //要得到状态值就转为int 0 //要得到名称就转string "课" var sewq = flag.Ext_IsDBNull(); var sewq1 = (int)flag;

参考文献:https://blog.csdn.net/weixin_33842328/article/details/85900683
本文来自博客园,作者:じ逐梦,转载请注明原文链接:https://www.cnblogs.com/ZhuMeng-Chao/p/17273025.html
1、声明枚举
每个枚举常量可以用一个标识符来表示,也可以为它们指定一个整数值,如果没有指定,那么默认从 0 开始递增。
注意:第一个枚举成员的默认值为整型的 0,后续枚举成员的值在前一个成员上加 1。我们在这个实例中把第一个枚举成员的值定义为 1,第二个就为 2,以此类推。
可以在定义枚举类型时改变枚举元素的值:
enum season {spring, summer=3, autumn, winter};
没有指定值的枚举元素,其值为前一元素加 1。也就说 spring 的值为 0,summer 的值为 3,autumn 的值为 4,winter 的值为 5
例如:
public enum RoomState_Enum
{
课, //0
自, //1
闲 //2
}
2、读取枚举值
读取是一个枚举类型的值,并且是他的key ;
比如:课就是获取到的是值1

3、根据获取枚举的可以读取它的value
/// <summary>
/// 枚举 int 转 枚举名称
/// </summary>
/// <typeparam name="T">枚举名</typeparam>
/// <param name="itemValue">int值,枚举key值</param>
/// <returns></returns>
private string ConvertEnumToString<T>(int itemValue)
{
return Enum.Parse(typeof(T), itemValue.ToString()).ToString();
}
例如:
获取到了“自”;
public enum RoomState_Enum
{
课, //0
自, //1
闲 //2
}
ConvertEnumToString<RoomState_Enum>(1);

参考文献:https://blog.csdn.net/dibr63585/article/details/102042477
二、通过枚举string读取value
#region 5.获取枚举值
//枚举的string值:例如上面例子 此方法传入name="课" 返回0
public static int ConvertEnumToInt<T>(string name)
{
return (int)Enum.Parse(typeof(T), name);
}
#endregion
三、判断string值是否存在枚举中
//是否存在标志 RoomState_Enum flag; //存在返回true 不存在为false //第一个参数就是要进行判断“课”是否存在枚举RoomState_Enum中 var ifhaveEnum = Enum.TryParse<RoomState_Enum>(“课”, true, out flag); //如果存在,那么flag就是对应枚举 //要得到状态值就转为int 0 //要得到名称就转string "课" var sewq = flag.Ext_IsDBNull(); var sewq1 = (int)flag;

参考文献:https://blog.csdn.net/weixin_33842328/article/details/85900683











没有回复内容