2013-10-30 5 views
6

मैं कनवर्ट करने के दो तरीकों के बीच चयन नहीं कर सकता।int सर्वोत्तम अभ्यास

public static int EnumToInt(Enum enumValue) 
{ 
    return Convert.ToInt32(enumValue); 
} 

2: enum से परिवर्तित करके सबसे अच्छा अभ्यास के लिए int

1 क्या है

public static int EnumToInt(Enum enumValue) 
{ 
    return (int)(ValueType)enumValue; 
} 
+1

गोली इस समस्या को कीड़े मुझे इतना। –

उत्तर

3

इसके अलावा फेंक है @dtb

आप बराबर चिह्न के बाद इसे आपूर्ति करके अपने enum का int (या ध्वज) निर्दिष्ट कर सकते हैं।

enum MyEnum 
{ 
    Foo = 0, 
    Bar = 100, 
    Baz = 9999 
} 

चीयर्स

3

आप एक enum है, तो इस तरह के

enum MyEnum 
{ 
    Foo, 
    Bar, 
    Baz, 
} 

और एक मूल्य के रूप में उस enum जैसे

,210

तो एक int के लिए मूल्य कन्वर्ट करने के लिए सबसे अच्छा तरीका है

int result = (int)value; 
2

मैं एक तिहाई वैकल्पिक मिश्रण में एक विस्तार विधि के रूप में Enum

पर
public static int ToInt(this Enum e) 
{ 
    return Convert.ToInt32(e); 
} 

enum SomeEnum 
{ 
    Val1 = 1, 
    Val2 = 2, 
    Val3 = 3, 
} 

int intVal = SomeEnum.ToInt(); 
+0

जहां मैं टाइप 'System.Enum' को int – zrabzdn

+0

में परिवर्तित नहीं कर सकता हूं, मेरे नवीनतम अपडेट – TGH

+1

TGH के साथ प्रयास करें, धन्यवाद! – zrabzdn

संबंधित मुद्दे