Properties backing field - What is it good for?
<p>On one hand, I know that the advisable usage of Properties is to have a backing field, like in the following example:</p>

<pre><code>    private int m_Capacity;

    public int Capacity
    {
        get { return m_Capacity &gt; 0 ? m_Capacity : -666; }
        set { m_Capacity = value; }
    }
</code></pre>

<p>On the other hand, what benefit do I get from using the above example over discarding the field and using only the property for all purposes, like in the following example:</p>

<pre><code>    public int Capacity
    {
        get { return Capacity &gt; 0 ? Capacity : -666; }
        set { Capacity = value; }
    }
</code></pre>

<p>What is good about using a backing field for regular (non-auto-implemented) properties?  </p>
