0

I have a situation where in my slides object is inside a DataContract Class PresentationObject. The slide Class has its own Properties. I want to skip all Properties which has null values in it.

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; }
}

I have set EmitDefaultValue = false to slides DataMember in PresentationObject Class, but still the null properties are retaining. Can anybody please help me out where I can skip all null Properties in slide Object.

Salah Akbari
  • 39,330
  • 10
  • 79
  • 109
user2404802
  • 43
  • 1
  • 6

1 Answers1

0

Use the Newtonsoft JSON serializer. Microsoft does. You can make it do this with a single property, which defaults to the behaviour you want.

The answer to your next question is here.

Community
  • 1
  • 1
Peter Wone
  • 17,965
  • 12
  • 82
  • 134