为什么DataContractSerializer不支持属性?

Xai*_*oft 3 wcf xsd datacontractserializer svcutil.exe

我根据客户的文档创建了xsd,并且所有xsd都有属性.我一直在使用xsd.exe从xsd生成类,但我读到DataContractSerializer不支持属性.为什么不?这是否意味着我只能使用只有元素的soap + xml文件?这是不可能的,因为我没有创建请求.有没有办法指定svcutil来识别属性?

car*_*ira 5

DataContractSerializer创建时考虑了"代码优先"的理念 - 它很好地映射到大多数编程语言(记录,列表),并且它不处理所有XML构造(例如属性或无序元素,例如)出于性能原因.

WCF(svcutil)仍然支持使用XmlSerializer,它可以处理AFAIK的所有XML构造.如果DataContractSerializer无法处理它,svcutil应该使用XmlSerializer创建一个契约.