C# 使用反射设置枚举
如何使用反射设置枚举 我的类有枚举:C# 使用反射设置枚举,c#,c#-4.0,c#-3.0,c#-2.0,C#,C# 4.0,C# 3.0,C# 2.0,如何使用反射设置枚举 我的类有枚举: public enum LevelEnum { NONE, CRF, SRS, HLD, CDD, CRS }; 在运行时,我想为ex将该枚举设置为CDD 我怎么做 value = (LevelEnum)Enum.Parse(typeof(LevelEnum),"CDD"); 因此,基本上您只需解析与要分配给变量的枚举值对应的字符串。如果字符串
public enum LevelEnum
{
NONE,
CRF,
SRS,
HLD,
CDD,
CRS
};
在运行时,我想为ex将该枚举设置为CDD
我怎么做
value = (LevelEnum)Enum.Parse(typeof(LevelEnum),"CDD");
因此,基本上您只需解析与要分配给变量的枚举值对应的字符串。如果字符串不是枚举的已定义成员,则此操作将失败。您可以使用Enum.IsDefined(typeof(LevelEnum),input)检查这一点代码>尝试使用类枚举
LevelEnum s = (LevelEnum)Enum.Parse(typeof(LevelEnum), "CDD");
展示您真正的问题,这样会更容易帮助您。感谢您的回复,我得到了错误:它无法将类型LevelEnum转换为字符串。@Yasser上面的代码中没有任何内容试图将LevelEnum转换为字符串
LevelEnum s = (LevelEnum)Enum.Parse(typeof(LevelEnum), "CDD");