title: C# getter and setter shorthand
body: <p>If my understanding of the internal workings of this line is correct:</p>
  
  <pre><code>public int MyInt { get; set; }
  </code></pre>
  
  <p>Then it behind the scenes does this:</p>
  
  <pre><code>private int _MyInt { get; set; }
  Public int MyInt {
      get{return _MyInt;}
      set{_MyInt = value;}
  }
  </code></pre>
  
  <p>What I really need is:</p>
  
  <pre><code>private bool IsDirty { get; set; }
  
  private int _MyInt { get; set; }
  Public int MyInt {
      get{return _MyInt;}
      set{_MyInt = value; IsDirty = true;}
  }
  </code></pre>
  
  <p>But I would like to write it something like:</p>
  
  <pre><code>private bool IsDirty { get; set; }
  
  public int MyInt { get; set{this = value; IsDirty = true;} }
  </code></pre>
  
  <p>Which does not work. The thing is some of the objects I need to do the IsDirty on have dozens of properties and I'm hoping there is a way to use the auto getter/setter but still set IsDirty when the field is modified.</p>
  
  <p>Is this possible or do I just have to resign myself to tripling the amount of code in my classes?</p>