title: How to implement custom JsonConverter in JSON.NET?
body: <p>I am trying to extend the JSON.net example given here 
  <a href="http://james.newtonking.com/projects/json/help/CustomCreationConverter.html" rel="noreferrer">http://james.newtonking.com/projects/json/help/CustomCreationConverter.html</a></p>
  
  <p>I have another sub class deriving from base class/Interface</p>
  
  <pre><code>public class Person
  {
      public string FirstName { get; set; }
      public string LastName { get; set; }
  }
  
  public class Employee : Person
  {
      public string Department { get; set; }
      public string JobTitle { get; set; }
  }
  
  public class Artist : Person
  {
      public string Skill { get; set; }
  }
  
  List&lt;Person&gt; people  = new List&lt;Person&gt;
  {
      new Employee(),
      new Employee(),
      new Artist(),
  };
  </code></pre>
  
  <p>How do I deserialize following Json back to List&lt; Person ></p>
  
  <pre><code>[
    {
      "Department": "Department1",
      "JobTitle": "JobTitle1",
      "FirstName": "FirstName1",
      "LastName": "LastName1"
    },
    {
      "Department": "Department2",
      "JobTitle": "JobTitle2",
      "FirstName": "FirstName2",
      "LastName": "LastName2"
    },
    {
      "Skill": "Painter",
      "FirstName": "FirstName3",
      "LastName": "LastName3"
    }
  ]
  </code></pre>
  
  <p>I don't want to use TypeNameHandling JsonSerializerSettings. I am specifically looking for custom JsonConverter implementation to handle this. The documentation and examples around this are pretty sparse on the net. I can't seem to get the the overridden ReadJson() method implementation in JsonConverter right.</p>