asmx 添加 Localy(XMLFile) 时无法导入 wsdl
Posted
技术标签:
【中文标题】asmx 添加 Localy(XMLFile) 时无法导入 wsdl【英文标题】:Cannot import wsdl When asmx added Localy(XMLFile) 【发布时间】:2021-07-02 23:43:25 【问题描述】:我有旧的 wcf Web 服务,对于网络问题,我决定将服务 WSDL 保存在 XML 文件中,并在我的 AspCore 项目中调用 Localy 以进行测试功能但是我有这个错误:
无法导入 wsdl:port 详细信息:导入 wsdl:port 所依赖的 wsdl:binding 时出错。 wsdl:binding 的 XPath: //wsdl:definitions[@targetNamespace='http://est']/wsdl:binding[@name='EstelamPortBinding'] 错误源的 XPath://wsdl:definitions[@targetNamespace='http://est']/wsdl:service[@name='Estelam']/wsdl:port[@name='EstelamPort'] 无法导入 wsdl:binding 详细信息:导入 wsdl:binding 所依赖的 wsdl:portType 时出错。 wsdl:portType 的 XPath://wsdl:definitions[@targetNamespace='http://est']/wsdl:portType[@name='EstelamPort'] 错误源的 XPath://wsdl:definitions[@targetNamespace='http://est']/wsdl:binding[@name='EstelamPortBinding'] 无法导入 wsdl:portType 详细信息:运行 WSDL 导入扩展时引发异常:System.ServiceModel.Description.DataContractSerializerMessageContractImporter 错误:找不到目标命名空间“http://est”的架构。 错误源的 XPath://wsdl:definitions[@targetNamespace='http://est']/wsdl:portType[@name='EstelamPort']
注意:我在我的 XML 中将位置更改为本地地址
【问题讨论】:
【参考方案1】:虽然您可以在 .net core 中调用 WCF 服务,但它受到一些限制。 .net core 中的 WCF 客户端只支持四种绑定:BasicHttpBinding、CustomBinding、NetHttpBinding、NetTcpBinding,.net Core 中的安全特性并不多。
关于core对WCF的支持,可以参考这个链接:
https://github.com/dotnet/wcf
【讨论】:
以上是关于asmx 添加 Localy(XMLFile) 时无法导入 wsdl的主要内容,如果未能解决你的问题,请参考以下文章
当我们在webservice.asmx.cs中编写所有代码时,webservice.asmx有啥用?
调用的webservice网址是:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx