【发布时间】:2011-03-11 17:09:14
【问题描述】:
在 WCF 上摸不着头脑......我收到了 XML 消息,其中<DataFields> 的孩子可以是任何东西,例如...
<Test1Root>
<CaseNo></CaseNo>
<Activity></Activity>
<DataFields>
<AccountRef></AccountRef>
<PropRef></PropRef>
<User></User>
</DataFields>
</Test1Root>
我已经在 BizTalk 中使用 <xs:any> 处理了这个问题 <DataFields> ...
<xs:element name="DataFields">
<xs:complexType>
<xs:sequence>
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip" />
</xs:sequence>
</xs:complexType>
</xs:element>
但我正在努力寻找如何在 WCF [DataContract] 中处理这个问题......
我尝试同时使用 svcutil.exe 和 xsd.exe 来创建类,它们都提供了主要元素(CaseNo、Activity 等),但都没有似乎可以处理 xs:any of DataFields ...
- svcutil 将 DataFields 用作 XmlElement
- xsd 将它作为一个类,但具有 XmlElement [] 类型的 Any 属性
是否可以更好地处理子元素?
【问题讨论】:
标签: wcf xsd svcutil.exe xsd.exe