title: JSON deserializer inherited generic type
body: <p>I have a problem with deserializing some JSON string into c# objects.</p>
  
  <p>Let's assume i have the following code:</p>
  
  <pre><code>public class A
  {
      public string Name { get; set; }
  }
  
  public class B : A
  {
      public int Age { get; set; }
  }
  
  public class C
  {
      public ObservableCollection&lt;A&gt; As
      {
          get;
          set;
      }
  }
  </code></pre>
  
  <p>And i serialize the following object <code>_c</code>:</p>
  
  <pre><code>C _c = new C();
  _c.As.Add(new B() { Name = "Max", Age = 4 });
  </code></pre>
  
  <p>This works pretty well.</p>
  
  <p>But i am not able to deserialize the created JSON-string and create instance of B, because the <code>ObservableCollection</code> is declared with <code>A</code> as generic type. Is there some way to tell Newtonsoft.Json to use <code>B</code> instead of <code>A</code>?</p>
  
  <p>Thank you very much.</p>