我正在尝试执行以下扩展方法 - >当你提供枚举时,将int转换为枚举: -
public static T ToEnum<T>(this int value)
{
return (T)Enum.ToObject(typeof(T), value);
}
现在,我希望能够使它只能将类型T定义为枚举。有什么我可以限制它吗?
例如
int day = 3;
DaysOfWeek dow = day<DaysOfWeek>(); // No compiler error.
DaysOfWeek dow2 = day<Foo>(); // Compiler error.