Caricare un file XML da remoto tramite XDocument e HttpWebRequest

di Stefano Paterno, in LINQ, LINQ To XML, UserScript,

Nello script #158 abbiamo visto come caricare un file XML remoto. In questo script affrontiamo lo stesso argomento offrendo una soluzione differente basata sul recupero del file tramite la classe HttpWebRequest. A differenze di XDocument, HttpWebRequest permette di personalizzare alcune informazioni relative alla chiamata per il recupero del file da remoto. Un tipico esempio è la personalizzazione del timeout; si può modificare questa proprietà per non far attendere per troppo tempo la nostra applicazione.

private XDocument GetRSS(string uri){
  HttpWebRequest req = (HttpWebRequest)WebRequest.Create(URL);
  req.Method = "GET";
  req.Timeout = 3000;
  StreamReader streamIn = 
    new StreamReader(req.GetResponse().GetResponseStream());
  XDocument xdoc = XDocument.Parse(streamIn.ReadToEnd());
  streamIn.Close();
  return xdoc;
}

Nell'esempio viene utilizzato l'oggetto StreamReader per leggere Il flusso dati restituito dalla chiamata tramite HttpWebRequest.
Lo stream ottenuto viene quindi letto e passato a XDocument al fine di avere una struttura XML.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi