读书人

求Enum状态传递后如何赋值

发布时间: 2013-12-10 15:05:55 作者: rapoo

求Enum状态传递后怎么赋值


public class EnumList
{
/// <summary>
/// 记录动作状态
/// </summary>
public enum RequestAction
{
reques = 0,
edit = 1,
dlete = 2
//我还很多....
}
}


在页面A:是参数传递比如action= (int)EnumList.RequestAction.edit;
实际就是传递action=1

在页面B:获取action的值转为int,得到1
那要将这个1转为EnumList.RequestAction类型,要怎么转啊?


EnumList.RequestAction newAcion = new EnumList.RequestAction();
if(action==0)
{
newAcion = EnumList.RequestAction.reques ;
}
else if("如果动作种类很多"==true)
{
newAcion = "挂了" ;
}
else
{
newAcion = "死也要死得明白啊" ;
}


我菜鸟,现在是这么丑的代码,有什么快速匹配的办法吗?
[解决办法]
引用:
Quote: 引用:

Quote: 引用:

(int)newAcion = action;
要是能这样多好啊。。。

我这个例子该怎么转啊?

我看了你写的这个了,action可以直接传reques,edit, dlete 等等,然后直接
(EnumName)EnumName.Parse(typeof(EnumName),sString)
其中字符串sString,枚举EnumName,实现将sString类型转换成EnumName类型。
替换一下就可以了

参见Enum.Parse(Type, String)用法

读书人网 >C#

热点推荐