Vb.net 未从wsdl获取异常的类定义

Vb.net 未从wsdl获取异常的类定义,vb.net,web-services,soap,wsdl,Vb.net,Web Services,Soap,Wsdl,我们想与客户的web服务对话。他们给了我们一个WSDL。我只能使用传统的导入--Add>Service Reference>Advanced>Add Web Reference将其导入asp.net。尝试使用常规的Add>Service Reference会产生大量错误。(我猜这是因为这是用SOAP1.1完成的,而不是更新的东西,但我不知道。我从来没有用soap做过很多事情。) WSDL包含了它们可能发送的各种SOAP异常的类型定义。它们都被定义为“复杂类型” 但是当我导入时,这些定义都没有显示

我们想与客户的web服务对话。他们给了我们一个
WSDL
。我只能使用传统的导入--
Add>Service Reference>Advanced>Add Web Reference将其导入asp.net。
尝试使用常规的
Add>Service Reference
会产生大量错误。(我猜这是因为这是用
SOAP1.1
完成的,而不是更新的东西,但我不知道。我从来没有用soap做过很多事情。)

WSDL包含了它们可能发送的各种
SOAP
异常的类型定义。它们都被定义为“
复杂类型”

但是当我导入时,这些定义都没有显示。它们不是VisualStudio中的自动完成下拉列表,如果我输入它们,就会出现“无此类”错误。我在同一个名称空间中查找消息中使用的所有类

我找错地方了吗?难道这些就不会出现吗

我必须手动重新创建这些类吗

更新

您询问尝试将什么错误导入为普通服务引用。这里是:(注:名称更改是因为客户对其专有代码的披露非常严格。)

Reference.svcmap:未能为服务引用生成代码 “福”。无法导入wsdl:portType详细信息:引发了异常 运行WSDL导入扩展时: System.ServiceModel.Description.XmlSerializerMessageCompactImporter 错误:加载提供的XSD文档时出现问题:a 对名为“GetFoo”且命名空间为的架构类型的引用 无法解析“”,因为 在targetNamespace的架构中找不到类型定义 ''. 请检查XSD文档 提供并重试。XPath到错误源: //wsdl:definitions[@targetNamespace='']/wsdl:portType[@name='FooPortType_v2'] 无法导入wsdl:绑定详细信息:导入时出错 wsdl:binding依赖的wsdl:portType。XPath到 wsdl:portType: //wsdl:definitions[@targetNamespace='']/wsdl:portType[@name='FooPortType_v2'] XPath到错误源: //wsdl:definitions[@targetNamespace='']/wsdl:binding[@name='FooBinding_v2'] 无法导入wsdl:端口详细信息:导入端口时出错 wsdl:端口所依赖的wsdl:绑定。XPath到 wsdl:绑定: //wsdl:definitions[@targetNamespace='']/wsdl:binding[@name='FooBinding_v2'] XPath到错误源: //wsdl:definitions[@targetNamespace='']/wsdl:service[@name='FooService\u v2']/wsdl:port[@name='FooPort\u v2']App\u WebReferences/foo/

请注意,如果我使用遗留的 方法,因此它不仅仅是WSDL中的错误。问题是 复杂,因为WSDL有多个级别的包含和导入, 由其他复杂类型等组成的复杂类型

也许我问错问题了。也许问题应该是:为什么我可以用遗留导入导入这个WSDL,而不是用当前导入


也许我还应该注意到,我试图通过将WSDL复制到我的应用程序中来导入,然后通过指向此WSDL文件来执行添加服务。现在我还没有访问真正的网站,但是他们给了我一些文档和wsdl。

你应该使用Add->Service引用创建代理,而不是作为web引用。WCF序列化将根据类型确定是否需要使用DataContractSerializer或XMLSerializer。你犯了什么错误?@Agalo我已经添加了错误文本。如果你知道这是什么原因,我会很高兴听到的。