避免序列化未设置的属性/字段?

时间:2017-03-13 08:02:07

标签: c# xml wcf

我已经从WSDL文件生成了WCF代理,并且遇到属性/字段问题。

属性属于复杂类型(类),并在生成的代码中使用以下属性进行修饰。

XmlElementAttribute(IsNullable=true)

当属性未设置为对象时,序列化程序仍将像XML一样在XML中生成它

<OpDDoctorInfo xsi:nil="true" />

我需要它根本不生成。

我真的不想更改生成的代理文件,但我似乎没有其他任何选择?

从这个link我可以看到,如果有一个默认值并且设置的值相同,那么默认行为将是从xml中排除它,那么为什么它具有属性的generetad像这样?

编辑:有些人认为这是一个副本:

What is the correct way to represent null XML elements?

问题不在于,问问处理null的正确方法是什么。我问如何在使用生成的代理类时从生成的XML中删除属性/字段。也许我必须更改代理生成的代码或者有更好的方法吗?

0 个答案:

没有答案