Avatar billede www.jakub.dk Nybegynder
21. december 2005 - 08:54 Der er 10 kommentarer og
1 løsning

Send og slet fil problem

Hej Eksperter

Jeg arbejder først og fremmest med ASP.NET 1.1.

Det drejer sig om sletning af en fil som lige er blevet genereret af en script og responset tilbage til brugeren.

Jeg vil gerne lave en løsning således at samtidig med, at serveren sender filen til brugeren (eller et split sekund bagefter) så bliver den slettet på serveren.
Har nogen af jer en ide eller prøvet noget lign. før?

Alle forslag modtages med glæde!

\Jakub
Avatar billede arne_v Ekspert
21. december 2005 - 09:11 #1
lav en side som bare returnerer filen og så sletter den - og generer så link
til den side fremfor til filen

<a href="sletefterserve.aspx?fil=foobar.dat">
Avatar billede www.jakub.dk Nybegynder
21. december 2005 - 09:14 #2
Det kræver vel at brugeren skal gemme filen ikke?

I min løsning skal brugeren se filen i browseren. Det drejer sig om en PDF fil, som de skal have mulighed for at printe ud eller gemme lokalt. Men lige så snart brugeren ser på filen på client maskinen, skulle den gerne ikke findes på serveren mere.

Hvis du mener at dit forslag kan gøre dette, kunne du så uddybe det lidt mere?
Avatar billede arne_v Ekspert
21. december 2005 - 09:22 #3
nej

det kan det

jeg står og skal ud i julegave ræset lige nu

hvis ikke andre har kommet med gode ideer inden så vender jeg tilbage senere idag
Avatar billede www.jakub.dk Nybegynder
21. december 2005 - 09:23 #4
Det er bare helt iorden. God fornøjelse!
Avatar billede arne_v Ekspert
21. december 2005 - 15:04 #5
browseren kalde side1.aspx

side1.aspx gør genererer foobar.pdf og outputter et link til sletefterbrug.aspx?fil=foobar.pdf

brugeren klikker på linket og browseren kalde den side

sletefterbrug.aspx sætter content type, læser filen og returnerer indeholdet
og sletter så filen efter brug
Avatar billede www.jakub.dk Nybegynder
21. december 2005 - 16:16 #6
Skal jeg redirecte til foobar.pdf i sletefterbrug.aspx og så slette filen lige efter Redirect linien.

Kan det lade sig gøre, eller er det en bestemt måde, som jeg ikke lige kan gennemskue?

Måske vil lidt kode afklare det?
Avatar billede arne_v Ekspert
21. december 2005 - 16:18 #7
nej - sletefterbrug.aspx læser filen og returnerer bytesene til browseren
Avatar billede arne_v Ekspert
21. december 2005 - 16:21 #8
Lidt skitseret kode:

Stream stm = new FileStream(fnm, FileMode.Open, FileAccess.Read);
byte[] b = new byte[stm.Length];
stm.Read(b, 0, b.Length);
stm.Close();
Response.ContentType = "application/pdf";
Response.BinaryWrite(b);
Avatar billede www.jakub.dk Nybegynder
21. december 2005 - 16:54 #9
Ok ... Jeg vil lige tjekke den imorgen.

Tak for hjælpen.
Avatar billede www.jakub.dk Nybegynder
22. december 2005 - 15:23 #10
Det er bare det jeg skal bruge her. Takker mange gange.

Hvis du lægger et svar Arne så får du point.
Avatar billede arne_v Ekspert
22. december 2005 - 15:29 #11
ok
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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