title: Interface as a Property
body: <p>I have an interface and two classes which implement it. I'm getting a compiler error, and I'm not quite sure why.</p>
  
  <pre><code>interface IPerson
  {
      ICollection&lt;string&gt; NickNames{get;set;}
  }
  class ObservablePerson : IPerson
  {
      ObservableCollection&lt;string&gt; NickNames{get;set;}
  }
  class ListPerson : IPerson
  {
      List&lt;string&gt; NickNames{get;set;}
  }
  </code></pre>
  
  <p>I'm having a bit of trouble understanding why this won't work, as List and ObservableCollection both implement ICollection.</p>