Tag: json.net deserialization

为什么当我用JSON.NET反序列化时忽略我的默认值?

我正在使用JSON.NET作为我的主序列化器。 这是我的模型,看看我已经设置了一些JSONProperties和一个DefaultValue 。 public class AssignmentContentItem { [JsonProperty(“Id”)] public string Id { get; set; } [JsonProperty(“Qty”)] [DefaultValue(1)] public int Quantity { get; set; } } 当我序列化List ,它做得很好: private static JsonSerializerSettings s = new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore, NullValueHandling = NullValueHandling.Ignore }; OUTPUT: [{“Id”:”Q0″},{“Id”:”Q4″},{“Id”:”Q7″}] 但是当我想反序列化这个jsonContent时,属性Qty始终为0并且未设置为默认值。 我的意思是,当我反序列化jsonContent时,因为Quantity的DefaultValue应该是1而不是0。 public static List DeserializeAssignmentContent(string jsonContent) { return JsonConvert.DeserializeObject<List>(jsonContent, s); […]