Json.net DefaultValueHandling免除布尔值
在使用json.net进行序列化时,我在序列化设置中使用了DefaultValueHandling.Ignore,如果将bool设置为false,则会导致删除键。 我希望单独使用bool类型免除,并申请其他类型和类。 请帮忙
提前致谢。
可以通过使用[JsonProperty(DefaultValueHandling = DefaultValueHandling.Include)]
属性装饰任何属性来覆盖序列化设置中的[JsonProperty(DefaultValueHandling = DefaultValueHandling.Include)]
。 这是class级:
public class Person { public string FirstName { get; set; } public string LastName { get; set; } [JsonProperty(DefaultValueHandling = DefaultValueHandling.Include)] public bool IsEmployed { get; set; } }
让我们说我们有以下样本:
var person = new Person { FirstName = "John", IsEmployed = false }; var json = JsonConvert.SerializeObject(person, new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore });
将导致以下json:
{ "FirstName": "John", "IsEmployed": false }