La classe WebClient fornisce metodi comuni per l'invio o la ricezione di dati da qualsiasi risorsa locale, rete Intranet o Internet identificata da un URI.
La classe WebClient utilizza la classe WebRequest per fornire accesso alle risorse. Le istanze di WebClient possono accedere ai dati con qualsiasi classe WebRequest discendente registrata con il metodo WebRequest.RegisterPrefix.
Nota |
|---|
| Per impostazione predefinita, in .NET Framework sono supportati URI che iniziano con identificatori di schema http:, https:, ftp e file:. |
La seguente tabella descrive i metodi WebClient per l'upload di dati su una risorsa.
| Metodo | Descrizione |
| OpenWrite | Recupera una classe Stream utilizzata per inviare dati alla risorsa. |
| OpenWriteAsync | Recupera una classe Stream utilizzata per inviare dati alla risorsa senza bloccare il thread chiamante. |
| UploadData | Invia una matrice di byte alla risorsa e restituisce una matrice Byte contenente una risposta. |
| UploadDataAsync | Invia una matrice Byte alla risorsa senza bloccare il thread chiamante. |
| UploadFile | Invia un file locale alla risorsa e restituisce una matrice Byte contenente una risposta. |
| UploadFileAsync | Invia un file locale alla risorsa senza bloccare il thread chiamante. |
| UploadValues | Invia una classe NameValueCollection alla risorsa e restituisce una matrice Byte contenente una risposta. |
| UploadValuesAsync | Invia una classe NameValueCollection alla risorsa e restituisce una matrice Byte contenente una risposta senza bloccare il thread chiamante. |
| UploadString | Invia una classe String alla risorsa senza bloccare il thread chiamante. |
| UploadStringAsync | Invia una classe String alla risorsa senza bloccare il thread chiamante. |
La seguente tabella descrive i metodi WebClient per il download dei dati da una risorsa.
| Metodo | Descrizione |
| OpenRead | Restituisce i dati da una risorsa sotto forma di classe Stream. |
| OpenReadAsync | Restituisce i dati da una risorsa senza bloccare il thread chiamante. |
| DownloadData | Esegue il download dei dati da una risorsa e restituisce una matrice Byte. |
| DownloadDataAsync | Esegue il download dei dati da una risorsa e restituisce una matrice Byte senza bloccare il thread chiamante. |
| DownloadFile | Esegue il download in un file locale dei dati da una risorsa. |
| DownloadFileAsync | Esegue il download in un file locale dei dati da una risorsa senza bloccare il thread chiamante. |
| DownloadString | Esegue il download di una classe String da una risorsa e restituisce una classe String. |
| DownloadStringAsync | Esegue il download di una classe String da un risorsa senza bloccare il thread chiamante. |
È possibile utilizzare il metodo CancelAsync per annullare le operazioni asincrone non completate.
Per impostazione predefinita le intestazioni HTTP non vengono inviate dall'istanza WebClient. Se la richiesta richiede un'intestazione opzionale, è necessario aggiungere l'intestazione all'insieme Headers. Ad esempio, per mantenere le query nella risposta, è necessario aggiungere un'intestazione dell'agente utente. Inoltre, i server posso restituire 500 (Errore interno del server) se l'intestazione dell'agente utente è mancante.
AllowAutoRedirect è impostata su true nelle istanze di WebClient.
Note sull'ereditarietà:
Le classi derivate devono chiamare l'implementazione della classe di base della classe
WebClient per garantire che la classe derivata si comporti come previsto.