asp.net – 升级到TLS 1.2后无法生成Web服务引用

我的服务器最近已升级支持TLS 1.2,而其他服务器(TLS 1.0和TLS 1.1.)已被禁用.现在,当我尝试生成引用时,它会给出以下异常:

服务网址= https://server-name/service.asmx

错误:无法从“服务URL”获取元数据如果这是您有权访问的Windows(R)Communication Foundation服务,请检查您是否已在指定地址启用元数据发布.有关启用元数据发布的帮助,请参阅MSDN文档,网址为http://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadata Exchange错误URI:“service url”元数据包含无法解析的引用:“service url”.将HTTP请求发送到“服务URL”时发生错误这可能是由于在HTTPS情况下未使用HTTP.SYS正确配置服务器证书.这也可能是由客户端和服务器之间的安全绑定不匹配引起的.底层连接已关闭:发送时发生意外错误.从传输流中收到意外的EOF或0字节. HTTP GET错误URI:“service url”下载“service url”时出错.底层连接已关闭:发送时发生意外错误.从传输流中收到意外的EOF或0字节.

我尝试了以下链接解决方案,但没有为我工作,请帮助.

support.microsoft.com/kb/888528

解决方法

在PCI合规性迫使我们全面禁用SSL3和TLS 1.0之后,我们最近遇到了这个问题.最终,我们发现的最佳解决方案与客户端应用程序用于连接到.NET 4.5上的Web服务的解决方案相同;即,添加一些代码以在运行时调整Visual Studio的设置.在最基本的形式中,看起来像这样:

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls12;

我们通过VS包提供了一个简单的配置UI,如果你想要一个插入式解决方案,可以在visual studio库中找到它:

https://visualstudiogallery.msdn.microsoft.com/63750942-1ebe-45dd-bade-552dd850873e

如果你想自己处理它,你需要做的就是创建一个VSIX包或一个外接程序(两者都需要visual studio sdk).

祝好运!

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....