日期:2014-05-17  浏览次数:20519 次

枚举类型如何转换为整型?
//枚举
public enum levels
{
  l1=1,
  l2=2,
  l3=3,
  l4=4
}

//根据整型l判断并显示
int? l; //一个从数据库中读取的值
switch (l)
{
  case levels.l1:
    //显示“L1”
    break;
  case levels.l2:
    //显示“L2”
    break;
  ...
  default:
    break;
}

结果出现以下错误:
Cannot implicitly convert type 'levels' to 'int'. An explicit conversion exists (are you missing a cast?)

请问:case levels.l1应该怎么写?即:枚举型如何转化为整型?前提:l变量的整型类型不能改变?
谢谢,并祝大家春节愉快。

------解决方案--------------------
  int? l = 2;
  string  str = ((levels)l).ToString();
------解决方案--------------------
引用
int? l=0; 
switch ((levels)l)

{
case levels.l1:
//显示“L1”
break;
case levels.l2:
//显示“L2”
break;
  default:
break;
}

完整写法