title: How to return an empty ReadOnlyCollection
body: <p>In my domain object I am mapping a 1:M relationship with an IList property.</p>
  
  <p>For a good isolation, I make it read-only in this way:</p>
  
  <pre><code>private IList&lt;PName&gt; _property;
  public ReadOnlyCollection&lt;PName&gt; Property
  {
      get
      {
          if (_property!= null)
          {
              return new ReadOnlyCollection&lt;PName&gt;(new List&lt;PName&gt;(this._property));
          }
      }
  }
  </code></pre>
  
  <p>I don't like ReadOnlyCollection very much but found no interface solution for making the collection read-only.</p>
  
  <p>Now I want to edit the property declaration to make it return empty list and not <code>null</code> when it's empty, so I edited it in this way:</p>
  
  <pre><code>if (_property!= null)
  {
      return new ReadOnlyCollection&lt;PName&gt;(new List&lt;PName&gt;(this._property));
  }
  else
  {
      return new ReadOnlyCollection&lt;PName&gt;(new List&lt;PName&gt;());
  }
  </code></pre>
  
  <p>but <code>Property</code> is always null when I get it in my test.</p>