title: C# Enums: Nullable or 'Unknown' Value?
body: <p>If I have a class with an <code>enum</code> member and I want to be able to represent situations where this member is not defined, which is it better?</p>
  
  <p>a) Declare the member as nullable in the class using nullable types. E.g.:  </p>
  
  <pre><code>public SomeEnum? myEnum;
  </code></pre>
  
  <p>b) Add a default, 'unknown' value to the enumeration. E.g.:</p>
  
  <pre><code>public enum SomeEnum {
      Unknown,
      SomeValueA,
      SomeValueB,
      SomeValueC,
  }
  </code></pre>
  
  <p>I can't really see any major pros/cons either way; but perhaps one is preferable over the other?</p>