日期:2014-05-16 浏览次数:20954 次
enum E
{
yes,
no
}
class Program
{
static void Main(string[] args)
{
E e1 = "yes".EnumParse<E>();
E e2 = "no".EnumParse<E>();
}
}
public static TEnum EnumParse<TEnum>(this string value) where TEnum : struct
{
TEnum result;
if (!Enum.TryParse<TEnum>(value, true, out result)) throw new ArgumentException();
return result;
}
//放在静态类里面
public static class EnumExt
{
public static TEnum EnumParse<TEnum>(this string value) where TEnum : struct
{
TEnum result;
if (!Enum.TryParse<TEnum>(value, true, out result)) throw new ArgumentException();
return result;
}
}