Non sono a conoscenza di un modo per farlo nella sezione defaultProxy di web.config, ma si può sicuramente farlo dal codice. Prova questo:
// Get proxy server info from AppSettings section of Web.Config
var proxyServerAddress = ConfigurationManager.AppSettings[ "proxyServerAddress" ];
var proxyServerPort = ConfigurationManager.AppSettings[ "proxyServerPort" ];
// Get proxy with default credentials
WebProxy proxy =new WebProxy(proxyServerAddress, proxyServerPort);
proxy.Credentials = System.Net.CredentialCache.DefaultCredentials();
Web.Config (sezione di configurazione):
<appSettings>
<add key="proxyServerAddress" value="proxy.myhost.com" />
<add key="proxyServerPort" value="8080" />
</appSettings>
E quindi assegnare proxy
al WebClient che si sta utilizzando nel vostro WebPart.
EDIT:
Se avessi fatto di più compiti a casa, avrei capito il problema avrebbe potuto essere risolto con un attributo: useDefaultCredentials = "true"
<system.net>
<defaultProxy useDefaultCredentials="true">
<proxy usesystemdefault="False" proxyaddress="http://127.0.0.1:8888" bypassonlocal="True" />
</defaultProxy>
</system.net>
fonte
2010-07-22 17:49:56
Grazie. Ma questo dovrebbe essere le credenziali del mio cliente ... non sono sicuro di poter ottenere la sua password. Ad ogni modo posso aggirare questo? – Prabhu
Codice aggiornato per ottenere correntemente le credenziali dell'utente. –
Pensi che sia possibile impostare l'indirizzo e la porta nella configurazione e aggiungere semplicemente la riga proxy.Credentials nel codice? – Prabhu