.netのHTTPS通信で System.Net.WebException: 接続が切断されました: 送信時に、予期しないエラーが発生しました。 とエラーがでたら TLS1.2にすればOK

WebClientでアクセスしたら例外がでた。
TLS1.0、1.1の廃止が原因らしい。

TLS1.2にするには
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 入れるだけで一応OK。

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
using (var client = new WebClient())
{
    var url = "https://www.sample.com/sample";
    var keys = new System.Collections.Specialized.NameValueCollection();
    var responseData = client.UploadValues(url, keys);
}

vb.netでもC#でも同じ書式

こう案内しているサイトもあった

ServicePointManager.SecurityProtocol = ServicePointManager.SecurityProtocol Or SecurityProtocolType.Tls12