Mam klasy z właściwości enum tak:Jak sprawdzić, czy została ustawiona właściwość enum? C#
public class Foo
{
public Color ColorType {get;set;}
}
public enum Color
{
Red,
Green,
}
Teraz ta klasa może zostać zainicjowane tak:
var foo = new Foo();
bez właściwości ColorType kiedykolwiek jest ustawiony. Teraz Próbuję utworzyć metody i wykonywać czynności na enum czy kiedykolwiek ustawione czy nie, na przykład mam metodę
private void checkEnum(Foo foo)
{
if(foo.ColorType !=null)
{
//perform these actions
}else
{
//perform those actions
}
}
jednak otrzymuję ostrzeżenie mówiąc, że wartość nigdy nie będzie nieważne i po dalszych badaniach, jeśli wyliczenie nigdy nie zostanie ustawione, jeśli domyślnie ustawiona jest pierwsza wartość, która w moim przypadku byłaby Czerwona, myślałem o dodaniu wartości do mojego wyliczenia, która byłaby "nie ustawiona" i uczynienie tej wartości pierwszą wartością , więc jeśli nie został ustawiony, to enum będzie miało wartość "not set", czy jest lepszy sposób na zrobienie tego, moja proponowana metoda wydaje się być niechlujna
Powinieneś umieć znaleźć odpowiedź tutaj: http://stackoverflow.com/questions/4967656/what-is-the-default-value-for-enum-variable –