【发布时间】:2015-07-29 18:53:27
【问题描述】:
我的幻灯片对象位于DataContract 类PresentationObject 内。幻灯片类有自己的Properties。我想跳过其中包含 null 值的所有 Properties。
public class PresentationObject
{
[DataMember(Order=0)]
public string source { get; set; }
[DataMember(Order = 1, EmitDefaultValue = false)]
public string pdf { get; set; }
[DataMember(Order = 2, EmitDefaultValue = false)]
public List<Slides> slides { get; set; }
[DataMember(Order = 3)]
public bool success { get; set; }
[DataMember(Order = 5, EmitDefaultValue = false)]
public string error_code { get; set; }
[DataMember(Order = 6, EmitDefaultValue = false)]
public string error_message { get; set; }
}
public class Slides
{
[JsonProperty(Order = -4)]
public int slideIndex { get; set; }
[JsonProperty(Order = -3)]
public List<TextResponseJson> texts { get; set; }
[JsonProperty(Order = -2)]
public List<MediaResponseJson> images { get; set; }
[JsonProperty(Order = -1)]
public List<MediaResponseJson> preview_png { get; set; }
}
我已在PresentationObject 类中将EmitDefaultValue = false 设置为幻灯片DataMember,但仍保留null 属性。任何人都可以请帮助我在哪里可以跳过 slide 对象中的所有 null Properties。
【问题讨论】:
-
EmitDefaultValue = falseforReference Types 没有意义,因为它们没有默认值。