29. marts 2004 - 15:00Der er
13 kommentarer og 1 løsning
browser visning af et byte array
Jeg har nogle binære data i min database som tit vil være et billed, men også kan være andre forskellige type som et word dokument. Jeg vil gerne have så en person kan klikke på en knap eller noget lignende og så vises det hvis det er et billed eller noget som browseren kan behandle, men giver brugeren mulighed for at gemme filen hvis den ikke kan vises ordentligt. Lige som det virker hvis man laver et normal html link til en fil som dette: <a href="/ers/test.jpg">test</a>
Filen byte arrayet hentes over en webservice så er derfor vi lige konvertere det tilbage til byte[] fra base64.
Metoden virker sådan set fint når det bare er et billed, så bliver det vist fint. Men når man f.eks. henter et word dokument i stedet for, så viser den bare en masse flot binær data i browseren, i stedet for at tilbyde at gemme det på din disk. Er der en måde at få det til at opfører sig som et normalt html link?
Saa vidt jeg ved reagerer browseren (IE) paa baggrund af dokument-typen, dvs. den extension det har. En download-boks kommer kun frem, hvis browseren ikke ved hvilken type det er.
Hmm, det ka jeg ikke lige gennemskue hvordan man skulle kunne gøre, muligt at du kan vise et eksempel? Lige nu har jeg ikke filnavne med nede i min database, men det kunne jeg sagtens tilføje hvis det er nødvændigt. Men jeg vil helst ikke ende i noget med at jeg temporært skal gemme filer et andet sted på serveren, når folk skal hente dem. Jeg er også tilfreds hvis brugeren kun har mulighed for at gemme den fil, og at den så ikke bliver vist i browseren selv om det er et billed. Men vil jo gerne have det vist hvis man kan.
Jeg vil tro at det skulle vaere nok at saette den rigtige contenttype ind foer du kalder Response.BinaryWrite. Dvs. at du i databasen er noedt til at gemme hvilke type binaere data det er.
Når jeg tester med et jpg billed og har skrevet: Response.ContentType = "test.jpg"; Response.BinaryWrite(bugAttach);
Så bliver billedet vist fint når jeg bruger mozilla firefox som browser, men i IE vil den gemme det som "WebForm1.aspx". Hvilket kan omdøbes efter det er gemt og så bliver vist som billed.
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.