Utilisation de System.Net.WebClient avec un certificat HTTPS

Dans mon C# client Windows, j'ai un POST de présentation de "la mère". Je veux que les données dans le soumet à être sécurisé, bien sûr, donc j'ai payé pour HostGator de me délivrer un certificat SSL.

J'ai sauvé au large de la .Fichier CER, et je suis de la construction de la requête en tant que telle:

//wrapper for WebClient object to use certificate file
class SecureWebClient : WebClient
{
    protected override WebRequest GetWebRequest(Uri address)
    {
        HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);
        string certPath = @"e:\mycertificate.cer";
        X509Certificate myCert = X509Certificate.CreateFromCertFile(certPath);
        request.ClientCertificates.Add(myCert);
        return request;
    }
}

//request
private static SecureWebClient client = new SecureWebClient();
private static NameValueCollection = new NameValueCollection();
nvc.Add(POST_ACTION, ACTION_CODE_LOGIN);
nvc.Add(POST_EMAIL, email);
nvc.Add(POST_PASSWORD, password);

sResponse = System.Text.Encoding.ASCII.GetString(client.UploadValues(BASE_URL + ACTION_PAGE, nvc));

Son lancement d'un Système.Net.WebException:

La connexion sous-jacente a été fermée: Une erreur inattendue s'est produite lors de l'envoi.

La InnerException est un Système.IO.IOException:

La négociation a échoué en raison d'un format de paquet inattendu.

Toute réflexion sur ce que je fais de mal?

source d'informationauteur Honus Wagner