none
Lettura da File XML da HTML RRS feed

  • Domanda

  • buongiorno a tutti. Ho un singolare problema (che forse è una cavolata) su una lettura di un XML.

    Visto la "grande" competenza del mio fornitore di esportare i file in un XML mi gira ogni giorno a mezzanotte il nuovo xml, ma leggibile solo da HTTP://10.0.0.2/clientielenco.xml.

    sino a ieri mi passava il file in questo formato   c:\FTP\clientielenco.xml  non avevo problemi di alcun sorta. Oggi però il file XML è cresciuto in proporzione all'incompetenza del mio fornitore che ha smesso di volermi condividere la cartella e, solo per caricarlo da http, aspetto dai 40 ai 50 secondi (in cui il browser mi si "congela") purtroppo il file è cicciotto (9000 padri x 10 campi figlio per ogni padre)  e non posso continuare a fare a manina "Tasto destro -> HTML -> SALVA PER CON NOME

    Come posso leggere e/o salvare automaticamente questo file in formato HTTP://10.0.0.2/clientielenco.xml se lagga così tanto il caricamento? Come leggo direttamente da HTTP://10.0.0.2/clientielenco.xml l'XML?

    Vi ringrazio in anticipo

    venerdì 14 ottobre 2011 10:00

Risposte

  • si bè non diventa molto diverso :) :) :)

     

    Imports System.Net
    
    Public Module XmlDownloader
        Public Function DownloadXML() As XDocument
            Dim request = HttpWebRequest.Create("HTTP://10.0.0.2/clientielenco.xml")
            Dim response = request.GetResponse()
            Dim xml = XDocument.Load(response.GetResponseStream())
            Return xml
        End Function
    End Module
    
    
    


    Antonio Esposito
    MCT, MCPD, MCTS, MCP
    http://dotnetlombardia.org

    Italy
    • Proposto come risposta Antonio Esposito martedì 18 ottobre 2011 16:04
    • Contrassegnato come risposta Irina Turcu venerdì 21 ottobre 2011 08:41
    venerdì 14 ottobre 2011 10:23

Tutte le risposte

  • ciao

     

    puoi usare un codice come questo:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Xml.Linq;
    using System.Net;
    
    namespace WebApplication16
    {
        public class XmlDownloader
        {
            public static XDocument DownloadXml()
            {
                var request = HttpWebRequest.Create("HTTP://10.0.0.2/clientielenco.xml");
                var response = request.GetResponse();
                var xml = XDocument.Load(response.GetResponseStream());
    
                return xml;
            }
        }
    }
    
    
    
    

     

    con questo puoi usare LINQ2XML per fare cicli, query, filtri, ordinamenti, etc.....

    altrimenti, se vuoi l'xml come testo, fai .ToString() al risultato, ma è meno performante

     

    se invece hai problemi di timeout perchè vai troppo oltre come durata del download, allora o aumenti il timeout, oppure passi al pattern di programmazione asincrona, ma ovviamente questo aggiunge 1 po di complessità

    a presto

     

     


    Antonio Esposito
    MCT, MCPD, MCTS, MCP
    http://dotnetlombardia.org

    Italy
    venerdì 14 ottobre 2011 10:17
  • Ciao Antonio,

    esempio di codice C# su forum VisualBasic :)

     Ciao


    Carmelo La Monica

    Blog http://community.visual-basic.it/carmelolamonica/

    WordPress http://carmelolamonica.wordpress.com/

    Twitter  http://twitter.com/carmelolamonica

    venerdì 14 ottobre 2011 10:20
  • si bè non diventa molto diverso :) :) :)

     

    Imports System.Net
    
    Public Module XmlDownloader
        Public Function DownloadXML() As XDocument
            Dim request = HttpWebRequest.Create("HTTP://10.0.0.2/clientielenco.xml")
            Dim response = request.GetResponse()
            Dim xml = XDocument.Load(response.GetResponseStream())
            Return xml
        End Function
    End Module
    
    
    


    Antonio Esposito
    MCT, MCPD, MCTS, MCP
    http://dotnetlombardia.org

    Italy
    • Proposto come risposta Antonio Esposito martedì 18 ottobre 2011 16:04
    • Contrassegnato come risposta Irina Turcu venerdì 21 ottobre 2011 08:41
    venerdì 14 ottobre 2011 10:23
  • Ciao  Dalagh,

    Ti ha aiutato quanto suggerito da Antonio? Avresti ancora bisogno di qualche dritta?

     

    Grazie in anticipo per la tua risposta,


    Irina Turcu

    Questo contenuto è distribuito “as is” e non implica alcuna responsabilità da parte di Microsoft. L'azienda offre questo servizio gratuitamente, allo scopo di aiutare gli utenti e farli aumentare la conoscenza sui prodotti e le tecnologie Microsoft.

    LinkedIn

    martedì 18 ottobre 2011 14:08