title: Serializing to JSON, Nullable Date gets omitted using Json.NET and Web API despite specifying NullValueHandling
body: <pre><code>using Newtonsoft.Json;
  
  namespace FAL.WebAPI2012.Controllers
  {
      public class Person
      {
          public int Id {get;set;}
          public string FirstName {get;set;}
          public string LastName {get;set;}
  
          [JsonProperty(DefaultValueHandling = DefaultValueHandling.Include, 
              NullValueHandling = NullValueHandling.Include)]
          public DateTime? Dob { get; set; }
      }
  
      public class TestNullsController : ApiController
      {
          // GET api/&lt;controller&gt;
          public Person Get()
          {
              Person myPerson = new Person() { 
                  Dob = null, FirstName = "Adrian", Id=1, LastName="Bobby"
              };
  
              return myPerson;
          }
      }
  }
  </code></pre>
  
  <p>As you can see, my Dob field is set to null but the result is the following</p>
  
  <pre><code>{ "Id":1, "FirstName":"Adrian", "LastName":"Bobby" }
  </code></pre>
  
  <p>and <code>Dob</code> is not serialized to null which I need it to be!</p>
  
  <p>(I have tested that <code>JsonProperty</code> is setting other attributes like name and it changes the JSON output perfectly. I just can't get the nullable property to be serialized.
  Also, I have tested Json.Net (see answer below), so my thinking is that web api setup is overriding something somewhere, would be nice to know where).</p>