मैं एक enumशून्य पर
string name;
public enum Color
{
Red,
Green,
Yellow
}
कैसे लोड पर शून्य करने के लिए इसे स्थापित करने के लिए enum कैसे सेट करें।
name = "";
Color color = null; //error
संपादित: मेरे बुरा है, मैं इसे ठीक से नहीं समझा था। लेकिन शून्य से संबंधित सभी जवाब सही है। मेरी स्थिति यह है कि, यदि मुझे कक्षा में एनम के लिए अन्य तत्वों जैसे नाम आदि के साथ मिल गया है, तो पेज लोड पर मैं कक्षा को आरंभ करता हूं और मानों को शून्य में डिफ़ॉल्ट करने का प्रयास करता हूं। यहाँ (कोड सी # में है) परिदृश्य है:
namespace Testing
{
public enum ValidColors
{
Red,
Green,
Yellow
}
public class EnumTest
{
private string name;
private ValidColors myColor;
public string Name
{
get { return name; }
set { name = value; }
}
public ValidColors MyColor
{
get { return myColor; }
set { myColor = value; }
}
}
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
EnumTest oEnumTest = new EnumTest();
oEnumTest.Name = "";
oEnumTest.MyColor = null; //???
}
}
}
फिर सुझावों का उपयोग करके नीचे मैं समझ गया और सेट के तरीकों के साथ काम करने के लिए ऊपर दिए गए कोड बदल दिया है। मुझे बस "?" जोड़ने की ज़रूरत है
public class EnumTest
{
private string name;
private ValidColors? myColor; //added "?" here in declaration and in get/set method
public string Name
{
get { return name; }
set { name = value; }
}
public ValidColors? MyColor
{
get { return myColor; }
set { myColor = value; }
}
}
सुंदर सुझाव के लिए धन्यवाद सब: निजी enum चर की घोषणा के दौरान और प्राप्त/सेट विधि में EnumTest कक्षा में।
संभावित डुप्लिकेट [सी # Enums: Nullable या 'अज्ञात' वैल्यू] (http://stackoverflow.com/questions/1795657/c-sharp-enums-nullable-or- अज्ञात मूल्य) –