2008-12-15 24 views
2

我試圖做下面的擴展方法 - >一個int轉換爲枚舉,當你提供枚舉: -我可以用WHERE關鍵字限制這個c#擴展方法的定義嗎?

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. 

回答

相關問題