2

当您提供枚举时,我正在尝试执行以下扩展方法->将 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.
4

1 回答 1

2

在哪里使用 T:结构

请参阅此问题 Create Generic method constraining T to an Enum

于 2008-12-15T13:12:39.277 回答