C# Servicepointmanager设置sercurityprotocol异常

C# Servicepointmanager设置sercurityprotocol异常,c#,.net,ssl,tls1.2,servicepointmanager,C#,.net,Ssl,Tls1.2,Servicepointmanager,在我的应用程序中,我想检查客户端支持哪种安全协议。 我有最新的.Net版本 我的想法是将SecurityProtocol设置为SecurityProtocolType Tls1.2,如下所示: ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 我的问题是,如果客户端不支持TLS1.2,ServicePointManager(SecurityProtocol)是否会抛出不支持此版本的异常?是,您应该获得 NotS

在我的应用程序中,我想检查客户端支持哪种安全协议。 我有最新的.Net版本

我的想法是将SecurityProtocol设置为SecurityProtocolType Tls1.2,如下所示:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
我的问题是,如果客户端不支持TLS1.2,ServicePointManager(SecurityProtocol)是否会抛出不支持此版本的异常?

是,您应该获得
NotSupportedException

在我过去做过的一些测试中,你会看到

未处理的异常:系统。NotSupportedException:不支持请求的安全协议。在System.Net.ServicePointManager.set_SecurityProtocol(SecurityProtocolType值)处

是的,你应该得到一份工作
NotSupportedException

在我过去做过的一些测试中,你会看到

未处理的异常:系统。NotSupportedException:不支持请求的安全协议。在System.Net.ServicePointManager.set_SecurityProtocol(SecurityProtocolType值)处


谢谢你的快速回答!因此,如果客户端在internet选项中关闭“use TLS1.2”,则会引发异常?是的,应该是这样。这也取决于操作系统,因为您使用的是windows 7,对吗?不,我使用的是windows 10,但有些用户使用的是win7,对于他们,我需要一个小工具来检查他们是否支持TLS 1.2。如果他们安装了.net.4.5,那么就使用TLS 1.2。应该得到支持。您将遇到windows vista/windows XP用户的问题应用程序不在vista/XP上运行,因此这没有问题:)应用程序是使用.net 4.6编译的,因此唯一的“问题”是客户端,如果他没有在internet选项中启用TLS1.2,不是吗?谢谢您的快速回答!因此,如果客户端在internet选项中关闭“use TLS1.2”,则会引发异常?是的,应该是这样。这也取决于操作系统,因为您使用的是windows 7,对吗?不,我使用的是windows 10,但有些用户使用的是win7,对于他们,我需要一个小工具来检查他们是否支持TLS 1.2。如果他们安装了.net.4.5,那么就使用TLS 1.2。应该得到支持。您将遇到windows vista/windows XP用户的问题应用程序不在vista/XP上运行,因此没有问题:)应用程序是使用.net 4.6编译的,因此唯一的“问题”是客户端,如果他没有在internet选项中启用TLS1.2,不是吗?