Comment savoir si une propriété enum a été définie? C #

J'ai une classe avec un enum propriété comme suit:

public class Foo
{
    public Color ColorType {get;set;}
}

public enum Color
{
    Red,
    Green,
}

Maintenant cette classe peut être initialisé comme suit:

var foo = new Foo();

sans ColorType bien jamais être ensemble.
Maintenant, je suis en train de créer une méthode et d'effectuer des actions sur celle de savoir si enum n'a jamais été définie ou pas, par exemple, j'ai une méthode

private void checkEnum(Foo foo)
{
    if(foo.ColorType !=null)
    {
        //perform these actions
    }else
    {
        //perform those actions
    }
}

cependant je reçois un avertissement disant que la valeur ne sera jamais nulle et sur d'autres recherches, si l'enum est jamais définie si la valeur par défaut sera la première valeur qui serait
être Rouge dans mon cas, j'ai pensé à l'ajout d'une valeur à mon enum qui serait "non définie" et que la valeur de la première, donc si il n'en a pas été réglée, alors
l'enum aura la valeur 'non défini', est-il une meilleure façon de faire cela, ma méthode proposée semble comme il pourrait être gênant

source d'informationauteur user2341534