title: The 'this' object cannot be used before all of its fields are assigned to
body: <p>In <em>Constructor</em> <strong>Day</strong> has problem:</p>
  
  <blockquote>
    <p>The 'this' object cannot be used before all of its fields are assigned to.</p>
  </blockquote>
  
  <p>But in the same case for <strong>Month</strong> in <em>Constructor</em> it works. Why?</p>
  
  <pre><code>struct Date
  {
      private byte day;
  
      public byte Day
      {
          get { return day; }
          set {
              if (value &gt; 0 &amp;&amp; value &lt; 32)
                  day = value;
              else
                  day = 0;
          }
      }
  
      private byte month;
  
      public byte Month
      {
          get { return month; }
          set
          {
              if (value &gt; 0 &amp;&amp; value &lt; 13)
                  month = value;
              else
                  month = 0;
          }
      }
  
      public Date(byte day, byte month)
      {
          Day = day;
          Month = month;
      }
  }
  </code></pre>