title: Why when I deserialize with JSON.NET ignores my default value?
body: <p>I'm using JSON.NET as my main serializer.</p>
  
  <p>This is my model, look that I've setted some <code>JSONProperties</code> and a <code>DefaultValue</code>.</p>
  
  <pre><code>public class AssignmentContentItem
  {
      [JsonProperty("Id")]
      public string Id { get; set; }
      [JsonProperty("Qty")]
      [DefaultValue(1)]
      public int Quantity { get; set; }
  }
  </code></pre>
  
  <p>When I serialize a <code>List&lt;AssignmentContentItem&gt;</code>, it doing a good work:</p>
  
  <pre><code>private static JsonSerializerSettings s = new JsonSerializerSettings
  {
      DefaultValueHandling = DefaultValueHandling.Ignore,
      NullValueHandling = NullValueHandling.Ignore
  };
  </code></pre>
  
  <p>OUTPUT:</p>
  
  <pre><code>[{"Id":"Q0"},{"Id":"Q4"},{"Id":"Q7"}]
  </code></pre>
  
  <p>But when I'd like to deserialize this jsonContent, the property Qty is always 0 and is not set to the default value. I mean, when I deserialize that jsonContent, as DefaultValue for Quantity should be one instead of 0.</p>
  
  <pre><code>public static List&lt;AssignmentContentItem&gt; DeserializeAssignmentContent(string jsonContent)
  {
      return JsonConvert.DeserializeObject&lt;List&lt;AssignmentContentItem&gt;&gt;(jsonContent, s);
  }
  </code></pre>
  
  <p>What should I do</p>