扩展方法
- C# code
-
///<summary>/// 根据字符串返回对应枚举类型 ///</summary>///<typeparam name="T">对应枚举类型</typeparam>///<param name="source">字符串</param>///<returns></returns>publicstatic T GetEnumByValue<T>(thisstring source) { if (typeof(T).BaseType ==typeof(Enum)) { foreach (T value in Enum.GetValues(typeof(T))) { if (source == value.ToString()) { return value; } } } else { thrownew ArgumentException("T必须为枚举类型"); } returndefault(T); } //调用publicenum Color { black, red, blue } Color obj ="blue".GetEnumByValue<Color>();