C#中已知enum值如何取出enum
2010-06-02 15:57 轩脉刃 阅读(3933) 评论(1) 编辑 收藏 举报
enum TypeName
{
SystemString,
SystemInt16,
SystemInt32
}
现在有string typeName 里面存放 TypeName的枚举值,比如“SystemString”
现在要取出TypeName.SystemString:
使用Enum类的反射:
(TypeName)typevalue = (TypeName)Enum.Parse(typeof(TypeName), typeName, true);
为了事先验证typename是否是TypeName的值,代码优化为:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
if (Enum.IsDefined(typeof(TypeName), typeName))
typeValue = (TypeName)Enum.Parse(typeof(TypeName), typeName, true);
else
throw new Exception("the return type does not defined");
实时了解作者更多技术文章,技术心得,请关注微信公众号“轩脉刃的刀光剑影”
本文基于署名-非商业性使用 3.0许可协议发布,欢迎转载,演绎,但是必须保留本文的署名叶剑峰(包含链接http://www.cnblogs.com/yjf512/),且不得用于商业目的。如您有任何疑问或者授权方面的协商,请与我联系。