Let's say I have a class that I want to to be able to serialize that looks like this:
public class SomeClass
{
[DataMember]
public object Var1 {get; set; }
[DataMember]
public object Var2 {get; set; }
[DataMember]
public object Var3 {get; set; }
}
Sometimes I want it to be serialized with Var3 omited, so basically like this:
public class SomeClass
{
[DataMember]
public object Var1 {get; set; }
[DataMember]
public object Var2 {get; set; }
public object Var3 {get; set; }
}
and in other cases I want it with Var2 omited.
Is there any way of decorating the class with attributes that will enable me to choose in what way i want this class serialized?
Add EmitDefaultValue
parameter to attribute.
public class SomeClass
{
[DataMember]
public string Var1 { get; set; }
[DataMember(EmitDefaultValue = false)]
public object Var2 { get; set; }
[DataMember(EmitDefaultValue = false)]
public object Var3 { get; set; }
}
When you want omit Var2
, set it to null
.
SomeClass sc = ...;
sc.Var2 = null;
In result it will be omitted.