我正在使用Json.NET将类序列化为JSON。
我有这样的课:
class Test1 { [JsonProperty("id")] public string ID { get; set; } [JsonProperty("label")] public string Label { get; set; } [JsonProperty("url")] public string URL { get; set; } [JsonProperty("item")] public List<Test2> Test2List { get; set; } }
我只想在is 时JsonIgnore()向Test2List属性添加属性。如果它不为null,那么我想将其包含在json中。Test2List``null
JsonIgnore()
Test2List
Test2List``null
根据James Newton King的说法:如果您自己创建序列化程序而不是使用JavaScriptConvert,则可以设置忽略该NullValueHandling属性。
NullValueHandling
这是一个示例:
JsonSerializer _jsonWriter = new JsonSerializer { NullValueHandling = NullValueHandling.Ignore };
或者,按照@amit的建议
JsonConvert.SerializeObject(myObject, Newtonsoft.Json.Formatting.None, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });