Как удалить свойства null DataMember из ответа в wcf

Я возвращаю xml-вывод в браузер с помощью wcf webservice, если свойство DataContract равно null, оно все равно встречается в ответе как

<Id i:nil="true" />

Есть ли способ, чтобы он вообще не возвращался в ответ?

Ответ 1

Подумал сам, мне нужно было добавить следующий атрибут моим DataMembers

[DataMember(EmitDefaultValue = false)]

Ответ 2

В классе, в котором присутствует ваше свойство, есть конструктор. В конструкторе инициализируйте его как null. Если свойство DataContract равно null, оно не будет отображаться в вашем XML файле. Если вы хотите, чтобы он отображался на вашем выходе, когда данные присутствуют в нем, просто создайте его снова в своем классе, где вы публикуете данные.