在Contract-First的模式下
我们使用svcutil.exe *.wsdl *.xsd /mc /l:cs 生成代理类时。
在设计Schema时需要注意以下几点
1. 不能用属性
2. 不能使用extision,如下
1: <xs:complexContent>
2: <xs:extension base="tns:RequestBase">
3: <xs:sequence>
4: <xs:element name="Culture" type="xs:string"></xs:element>
5: ......
6: </xs:sequence>
7: </xs:extension>
8: </xs:complexContent>
3. xml:choice不能放到顶级元素里,否则发布服务是出错。
4. minOccurs=0的值类型元素不能放到顶级元素里,不然不能生成xxxSpecified.
xxxSpecified指示在soap消息里传不传xxx属性。
本文档提供了在Contract-First模式下使用svcutil.exe工具生成代理类时,设计WSDL与XSD文件的注意事项。具体包括:避免使用属性、不可使用extension特性、xml:choice的正确使用方式以及如何处理minOccurs=0的值类型元素。
129

被折叠的 条评论
为什么被折叠?



