【发布时间】:2016-03-22 12:33:28
【问题描述】:
我在序列化空值时遇到问题。实际上我根本不想包含它。
[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 实例化等解决方案对我来说不是一个选项。
【问题讨论】:
-
你的序列化器是什么?
-
将 [DataIgrore] 属性放在你不想序列化的属性上
-
这是有条件的。如果属性为空,OP 想忽略! @GeorgeFindulov
-
我认为序列化器是 protobuff
标签: c# .net serialization null