我在序列化null值时遇到问题。实际上我根本不想包含它。
[DataContract]
public class SearchItem{
public SearchCriteria()
{
IsActive = true;
IsFiltered = true;
}
[DataMember(Order=01)]
public bool? IsActive { get; set; }
[DataMember(Order=02)]
public bool IsPriceFiltered { get; set; }
}
当我想像
那样实现时 new SearchCriteria(){
IsActive = null,
}
它仍然会序列化IsActive
属性。
如何解决这个问题的任何建议?
创建为enum
或与其他constructor
实例化的解决方案不是我的选项。
答案 0 :(得分:0)
您可以使用EmitDefaultValue。
[DataMember(Order=01, EmitDefaultValue=false)]
public bool? IsActive { get; set; }