如何从wcf中的响应中删除null DataMember属性

Nic*_*len 10 .net serialization

我使用wcf webservice将xml输出返回给浏览器,如果DataContract的属性为null,它仍然在响应中出现

<Id i:nil="true" />
Run Code Online (Sandbox Code Playgroud)

有没有办法让它根本没有回复?

Nic*_*len 20

我自己想出来,我需要将以下属性添加到我的DataMembers中

[DataMember(EmitDefaultValue = false)]
Run Code Online (Sandbox Code Playgroud)

  • 有没有办法将此指定为默认行为?这似乎是对微软的一种可怕的疏忽.例如,注释包含超过100个POCO的类库的每个属性是不可接受的. (3认同)
  • 这对我来说似乎不起作用......我还应该添加什么? (2认同)