Web API では、プロパティを含むクラスをシリアル化していますがIEnumerable
、プロパティが空のコレクションでない場合にのみシリアル化する必要があります。
[DataMember(EmitDefaultValue = false)]
プロパティはコンストラクターで初期化されるため、null ではないため、機能しません。
[DataContract]
public class Linkable : ILinkable {
[DataMember(EmitDefaultValue = false)]
public IList<ILink> links { get; set; }
[DataMember(EmitDefaultValue = false)]
public IList<ILink> linkTemplates { get; set; }
public Linkable() {
links = new List<ILink>();
linkTemplates = new List<ILink>();
}
}
でこれを行う方法はありAttribute
ますか?そうでない場合、どうすればこれを達成できますか?