J'ai un ENUMComment configurer ENUM null
string name;
public enum Color
{
Red,
Green,
Yellow
}
Comment mettre à NULL en charge.
name = "";
Color color = null; //error
Modifié: Mon mauvais, je ne l'expliquer correctement. Mais toutes les réponses liées à nullable est parfaite. Ma situation est ce que si, j'ai obtenu/set pour l'enum dans une classe avec d'autres éléments comme le nom, etc. Lors du chargement de la page, j'initialiser la classe et essayer de définir par défaut les valeurs à null. Voici le scénario (le code est en 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; //???
}
}
}
Ensuite, en utilisant les suggestions ci-dessous j'ai changé le code ci-dessus pour le faire fonctionner avec méthodes get et set. J'ai juste besoin d'ajouter "?" dans la classe EnumTest pendant la déclaration de la variable enum privée et dans la méthode 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; }
}
}
Merci à tous pour vos suggestions.
double possible de [C# énumérations: Nullable ou 'Unknown' Valeur] (http://stackoverflow.com/questions/1795657/c-sharp-enums-nullable-or- valeur inconnue) –