背景:我的任务是创建一个单一登录解决方案,将我们的内部用户重定向到供应商的web应用程序。我已经将其设置为ASP.Net项目,该项目将调用供应商提供的web服务。此服务将返回用于登录供应商网站的URL和令牌。所有这些都要安全地完成。
问题:当使用Visual Studio的添加Web引用对话框下载WSDL并生成所需的代理类时,我得到以下错误:
下载时出错'https://server:port/folder/Service?wsdl"。这个基础连接已关闭:在邮寄身份验证失败,因为远程方已关闭传输流。元数据包含的引用不能已解决:'https://server:port/folder/Service?wsdl"。一向发出HTTP请求时出错https://server:port/folder/Service?wsdl.这可能是由于未配置服务器证书在HTTPS的情况下,正确使用HTTP.SYS。这也可能是由客户端和服务器之间的安全绑定不匹配。基础连接已关闭:上发生意外错误发送。身份验证失败,因为远程方已关闭传输流。如果在当前解决方案中定义了服务,请尝试构建解决方案,然后再次添加服务引用。
除此错误外,添加引用按钮变灰,使我无法添加引用和生成代理类。
该项目在.Net Framework 4.0下运行。我已经正确下载并安装了必要的客户端密钥/证书。我已经将IP地址和服务器名称添加到主机文件中,并将两者都添加到代理绕过列表中。我可以浏览到端点并在IE和VS的web浏览器中查看WSDL。我甚至可以在VS的AddWebReference对话框中查看WSDL。在每种情况下,都会提示我选择要使用的证书,我会选择。
我无法访问web服务本身或它所在的服务器。
我在谷歌上花了很多时间,但一直找不到解决方案。有什么想法吗?
通过下载WSDL并通过引用URL file:\drive:pathnamefilename.wsdl
的添加Web引用对话框将其拉入VS来解决此问题。