Avatar billede neeo Nybegynder
26. marts 2008 - 09:38 Der er 9 kommentarer

gemme data

Hej.

på min website laver jeg en request på noget lang xml fra en anden program, og dette gøre jeg på 10 forskellige sider.

men problemet er at dette request tager lidt på performancen når man kalder den på hver enkelt side (postback).

kunne man ikke gemme det her ned første gang, også læse det fra det sted man har gemt og slette igen når brugeren har forladt websiden ?

alle forslag er velkommne der jeg er lidt nybegynder til det her :)
Avatar billede softspot Forsker
26. marts 2008 - 09:48 #1
Hvor er det du gerne vil gemme denne XML? På serveren eller ude ved klienten? Hvordan er det du kalder det andet program for at få XML-filen ud?
Avatar billede neeo Nybegynder
26. marts 2008 - 09:54 #2
jeg vil gerne gemme den på serveren helst, også kunne det være fedt at have noget timeout på en dag eller 2 osv..
jeg henter den igennem en xml objeckt, noget custom dll .. (bruger ngoet IXMLDOMElement)
men hvilke asp object skal man bruge for at gemme og hvordan gemmer man sådan noget på server siden ?
Avatar billede softspot Forsker
26. marts 2008 - 10:19 #3
Hvis du har fat i XML med XMLDOM, kan du faktisk kalde Save på XMLDocument-objektet og på den måde gemme den på serveren. Du skal blot sørge for at der er skriverettigheder til det sted hvor du vil gemme det.

Hvis du vil checke hvor gammel XML-filen er og om den eksisterer kan du benytte Scripting.FileSystemObject komponenten (som typisk er installeret som standard på Windows Servere). Det check kunne udføres nogenlunde således:

stiTilXML = Server.MapPath("/minXMLcache.xml")
set fso = Server.CreateObject("Scripting.FileSystemObject")
if fso.FileExists(stiTilXML) then
  set f = fso.getFile(stiTilXML)

  if datediff("d", f.DateCreated, now) > 1 then
    ' hent XML-filen fra kilden igen, da den er ældre end godt er...
    ' og gem den nye version i cache, så den kan læses derfra næste gang
  else
    ' indlæs XML-filen fra cache ved at kalde Load-funktionen på XMLDocument
    ' med variablen stiTilXML
  end if

else
  ' hent XML-filen fra kilden igen, da den er ældre end godt er...
  ' og gem den nye version i cache, så den kan læses derfra næste gang
end if

' Gør det ved XML-filen som du altid har gjort...


Du kan lure mere om FileSystemObject's hemmeligheder på http://msdn2.microsoft.com/en-us/library/6kxy1a51(VS.85).aspx
Avatar billede keysersoze Guru
26. marts 2008 - 10:21 #4
alt afhængig af hvor stor en datamængde det er kunne session eller application objected måske også være en mulighed;

Session("data") = "datastring"
Avatar billede neeo Nybegynder
26. marts 2008 - 10:33 #5
softspot det der lyder til noget fornuftigt.
kan du ikke smide et svar :)
Avatar billede neeo Nybegynder
26. marts 2008 - 10:33 #6
mange tak for hjlpen drenge
Avatar billede softspot Forsker
26. marts 2008 - 10:37 #7
Velbekomme :)
Avatar billede softspot Forsker
03. april 2008 - 12:52 #8
reminder...
Avatar billede softspot Forsker
08. april 2008 - 22:44 #9
hep!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester