我正在将FedEX Web服务整合到vb.net应用程序中。我已经为各种服务导入了WSDL(速率,发货/创建标签,地址验证)。在我将它们添加为Web引用后,我在构建项目时遇到了SGEN错误:
“命名空间中的顶级XML元素'XXX''引用不同的类型......”
它们显然是单独的WSDL中的重用部分。到目前为止,我已经能够通过更改来修复错误:
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.18034"), _
System.SerializableAttribute(), _
System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://fedex.com/ws/addressvalidation/v2")> _
Public Enum AddressValidationAccuracyType
包含TypeName,例如:
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.18034"), _
System.SerializableAttribute(), _
System.Xml.Serialization.XmlTypeAttribute([TypeName]:="servAddressValidationAccuracyType", [Namespace]:="http://fedex.com/ws/addressvalidation/v2")> _
Public Enum AddressValidationAccuracyType
但这是一项繁琐的任务,我希望在添加wsdl文件后,如果不更新所有reference.vb文件,可能会有不同/正确/更好的方法来消除此错误。我是新手使用网络参考,并没有发现FedEx文档有用。