Vilket är bästa sättet att läsa en xml fil som är på en annan webbserver?
Filen är 2MB så jag funderar på om det är bättre att hämta över din till servern som kör min applikation och sen läsa den därifrån.
Har ni länkar till lite exempel så blir jag glad då jag är helt ny på ASP.NET
För hämtning så skulle jag använda mig av WebClient klassen.
För läsning av Xml filen finns det lite olika lösningar.
Du kan skapa ett schema för den som automatiskt gör om xml filen till en objektstruktur, eller så kan du använda dig av XmlDocument eller Linq för att söka i xmlfilen.
För läsning kommer jag använda XmlDocument. Linq kommer inte att användas då det är Framework 2.0.
Vill egentligen inte hämta filen då den uppdateras imellanåt med nytt innehåll.
Men med tanke på storleken så kanske det är bäst att hämta den, läsa den och sen radera den?
För läsning kommer jag använda XmlDocument. Linq kommer inte att användas då det är Framework 2.0.
Vill egentligen inte hämta filen då den uppdateras imellanåt med nytt innehåll.
Men med tanke på storleken så kanske det är bäst att hämta den, läsa den och sen radera den?
Tja på ett eller annat sätt kommer du ju att hämta den, är det data som du skall presentera så kanske du kan hitta på något kul med javascript? Så att du slipper tanka över den till servern utan att du med javascript tankar över den till klienten. Men eftersom den är på 2 mb så antar jag att det inte är något alternativ :).
Så att tanka den till din server lite då och då är väl det bästa :).
Har funderat och läst lite nu.
WebClient klassen ger ingen möjlighet att styra var den sparas eller med vilket filnamn och det kan ju ställa till det om fler än en samtidigt hämtar filen. (Iaf hittar jag inget om att det går).
Då återstår det att läsa filen från servern.
Funkar det att köra XmlDocument.Load(url); direkt, eller behöver man köra en XmlReader istället för URL?
Får nog testa att ladda upp en xml fil till en server imorgon och testa med.
Har funderat och läst lite nu.
WebClient klassen ger ingen möjlighet att styra var den sparas eller med vilket filnamn och det kan ju ställa till det om fler än en samtidigt hämtar filen. (Iaf hittar jag inget om att det går).
Då återstår det att läsa filen från servern.
Funkar det att köra XmlDocument.Load(url); direkt, eller behöver man köra en XmlReader istället för URL?
Får nog testa att ladda upp en xml fil till en server imorgon och testa med.
Rekommenderar inte att läsa in från http:// det går väldigt mycket långsammare än att ha en kopia lokalt.
Sedan beror det lite på hur många användare osv. Kom ihåg att om du läser in filen för varje användare * 2MB så försvinner det rätt mycket minne om du har 1000 samtidiga användare :)
Det kommer nog aldrig vara många användare samtidigt. Skulle bli förvånad om det skulle vara mer än fem samtidigt. Troligtvis är det bara en eller max två st.
har du access till servern? jag brukar bygga windows service som sköter att skyffla hem filen med en Timer, säg varje kvart eller så. Vill absolut inte rekommendera att man på något synkront sätt sköter hämtandet, direkt i o med requests på nån webbsida eller så, då det blir seg, trögt och om källan ligger nere så står det o tuggar ett tag osv o man vill ju inte ha tröga websidor.
Har ställt den frågan till företaget som har servern, men ännu inte fått svar.
freguz skrev:
har du access till servern? jag brukar bygga windows service som sköter att skyffla hem filen med en Timer, säg varje kvart eller så. Vill absolut inte rekommendera att man på något synkront sätt sköter hämtandet, direkt i o med requests på nån webbsida eller så, då det blir seg, trögt och om källan ligger nere så står det o tuggar ett tag osv o man vill ju inte ha tröga websidor.
Personligen har jag inte access, men eftersom det är kundens server så kan det eventuellt gå att installera en service.
280 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e