我有一個枚舉如何設置枚舉空
string name;
public enum Color
{
Red,
Green,
Yellow
}
如何將它設置爲NULL負載。
name = "";
Color color = null; //error
編輯: 我的壞,我沒有正確解釋。但所有與可爲空有關的答案都是完美的。我的情況是,如果,我已經在類中使用名稱等獲取/設置enum。在頁面加載時,我初始化類並嘗試將這些值默認爲null。下面是這種情況(代碼是在C#):
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; //???
}
}
}
然後,使用下面的建議我改變了上面的代碼,使其與get和set方法工作。我只需要添加「?」在EnumTest類中私有枚舉變量聲明和get/set方法中:
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; }
}
}
感謝所有的可愛的建議。
的可能的複製[C#枚舉:可爲空或 '未知' 值](http://stackoverflow.com/questions/1795657/c-sharp-enums-nullable-or-未知值) – 2016-07-26 03:50:02