Effettuando una chiamata tramite l'oggetto WebClient tipo la seguente:

C#

BO.Response result = null;

System.Collections.Specialized.NameValueCollection data = new System.Collections.Specialized.NameValueCollection();
data.Add("secret", secret);

using (System.Net.WebClient wc = new System.Net.WebClient())
{
  byte[] b = wc.UploadValues(url, data);
  string s = System.Text.Encoding.UTF8.GetString(b);
  result = Newtonsoft.Json.JsonConvert.DeserializeObject<BO.Response>(s);
}
può capitare di avere questo errore:
Unable to connect to the remote server

Impossibile stabilire la connessione. Risposta non corretta della parte connessa dopo l'intervallo di tempo oppure mancata risposta dall'host collegato nnn.nnn.nnn.nnn:443
l'errore compare perchè la chiamata non riesce a passare dal Proxy.
Nel mio caso il proxy era configurato per usare il file Proxy PAC. Questo è configurato a livello di utente, in Internet Explorer, tramite le Opzioni internet:

E' possibile configurare l'applicazione per fare in modo che qualunque chiamata effettuata usi il proxy, questo senza dover modificare il codice.
Questo si ottiene configurando opportunamente il web.config nella sezione /configuration/system.net/defaultProxy/proxy:

XML

<?xml version="1.0" encoding="utf-8"?>
<configuration>

  <system.net>
    <defaultProxy>
      <proxy scriptLocation="http://proxy.sgart.local:8080/wpad.dat" usesystemdefault="True" />
    </defaultProxy>
  </system.net>

</configuration>
impostando il parametro scriptLocation e usesystemdefault.
Tags:
C#236 Esempi225
Potrebbe interessarti anche: