2011-03-14 2 views
13

열거 형의 기본/파생 형식 (바이트, 짧은, 정수 등)을 어떻게 얻을 수 있습니까?기본/파생 형식의 열거 형 가져 오기?

+1

@ChrisF : 유형이 아닌 값을 찾고. – Will

+0

사과드립니다. 나는 다른 제목을 잘못 읽었습니다. 가까운 투표를 취소 할 수 있다면 그렇게 할 수 있습니다. 자동 삽입 된 주석을 삭제했습니다. – ChrisF

답변

19

찾고 계신 분은 Enum.GetUnderlyingType(enumType)입니다. MSDN에서

샘플 :

static object GetAsUnderlyingType(Enum enval) 
{ 
    Type entype = enval.GetType(); 

    Type undertype = Enum.GetUnderlyingType(entype); 

    return Convert.ChangeType(enval, undertype); 
} 
+0

간단히 말해서, 고마워요. – Will

3
using System; 

class Program 
{ 
    enum IntEnum : int { A } 

    static void Main(string[] args) 
    { 
     var intEnum = IntEnum.A; 

     Console.WriteLine(intEnum.GetType().GetEnumUnderlyingType()); 

     Console.WriteLine("Press any key to exit..."); 
     Console.ReadKey(); 
    }  
}