Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 客户机和服务器无法通信,因为它们没有通用的算法_C#_Algorithm_Sql Server 2008_Ssl_Iis - Fatal编程技术网

C# 客户机和服务器无法通信,因为它们没有通用的算法

C# 客户机和服务器无法通信,因为它们没有通用的算法,c#,algorithm,sql-server-2008,ssl,iis,C#,Algorithm,Sql Server 2008,Ssl,Iis,我正在尝试将我的C#web应用程序迁移到运行在windows server 2012 R2上的生产实例。当我尝试通过IIS浏览应用程序时,我收到一个奇怪的错误“客户端和服务器无法通信,因为它们没有一个通用的算法”,我不完全确定这意味着什么 我在网上读到了一些与我类似的问题,他们说问题源于SSL/TLS的不兼容性问题。我相信我的新服务器在签入regedit并找到我认为是我的TLS证书后使用了TLS1.2。每当我的应用程序尝试连接到运行在位于不同实例上的SQL Server 2008 DB系统上的D

我正在尝试将我的C#web应用程序迁移到运行在windows server 2012 R2上的生产实例。当我尝试通过IIS浏览应用程序时,我收到一个奇怪的错误“客户端和服务器无法通信,因为它们没有一个通用的算法”,我不完全确定这意味着什么

我在网上读到了一些与我类似的问题,他们说问题源于SSL/TLS的不兼容性问题。我相信我的新服务器在签入regedit并找到我认为是我的TLS证书后使用了TLS1.2。每当我的应用程序尝试连接到运行在位于不同实例上的SQL Server 2008 DB系统上的DB时,就会遇到此错误。我的网站目前所在的位置没有任何问题(它运行在Windows Server 2008 R2实例上)


我的问题是,您知道在哪里可以找到我的应用程序在生产服务器和SQL server DB实例上的安全证书吗?它们是否必须相似才能解决此“客户端和服务器无法通信,因为它们没有通用算法”错误。非常感谢您的帮助。

将您的项目升级为使用ASP.NET 4.6或更高版本,或在ASP.NET 4.5上使用以下代码

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; // .NET 4.5
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; // .NET 4.0

ASP.NET 4.6自动使用TLS 1.2(如果可用)

你的.NET版本是什么?相关问题:我相信我使用的是.NET版本4.5,但我不确定在哪里检查它。谷歌是你的朋友刚刚检查过的,4.5我注意到的另一件事是,我的新产品盒安装了.NET版本4.6.1,而我的数据库所在的盒子安装了.NET版本4.5.1。那会有区别吗?