Enum’ı Generic Olarak Kullanmak

C#’ta normal şartlar altında bir generic tipi enum olarak belirtmek istersek şunu kullanmamız gerekirdi. Ne yazık ki enum için bu işe yaramıyor. Bunun sebebiyse, enum’ın özel bir tip olarak davranması ve Microsoft’un bunu henüz implemente etmemesi.

Onun yerine tanımladığımız generic tipi enum mı diye kontrol etmemiz ve bu generic tip değilse fonksiyonu kullananı uyarmamız ve onu enum kullanmaya zorlamamız gerekecek. Onu da şöyle yapacağız.

Msdn Enum Class sayfasında Enum’ın tip tanımını şöyle yapabileceğimiz belirtiliyor.

Bu tanıma dayanarak yeni tanımımız şöyle olacak;

Referanslar : growingwiththeweb , msdn