Avatar billede rumbassen Nybegynder
28. oktober 2005 - 08:59 Der er 8 kommentarer og
1 løsning

Hente billede fra mysql og vise det på en webform som image

Jeg vil gerne kunne hentnte et bille og dynamisk sætte det ind på en webform.
Jeg henter først billedet over i et byte array.
Derefter lægger jeg alt data over i en memorystream.
herefter omdannes denne memorystream til et System.Drawings.Image
og dette vil jeg så convertere til System.Web.UI.Webcontrols.Image men dette fejler og jeg kan heller ikke caste det.

Har i nogle forslag?
Avatar billede Syska Mester
28. oktober 2005 - 09:38 #1
gem det på serveren som alm fil, og ikke i databasen, den bliver hurtigt stor og langsommere.... gem i stedet linket hvor på serveren billedet ligger, sparer dig for en masse problemer

// ouT
Avatar billede rumbassen Nybegynder
28. oktober 2005 - 09:43 #2
Ja det ved jeg godt men jeg vil aligeveller gerne prøve at teste dette og sammenligne osv.

Har du et forslag til en løsning af dette udover at gemme et link til filen i databasen?
Avatar billede jokkejensen Novice
28. oktober 2005 - 09:48 #3
et image kan kun databindes gennem ImageUrl ... så det skal gemmes midlertidigt...
Avatar billede jokkejensen Novice
28. oktober 2005 - 09:49 #4
MemoryStream ms = new MemoryStream(imageBytes);
Bitmap img = Image.FromStream(ms);
Avatar billede Syska Mester
28. oktober 2005 - 09:54 #5
helt i orden, er også bedst at gøre sig sine egne erfaringer nogen gange, det kan jeg kun 100% tilslutte mig.

// ouT
Avatar billede rumbassen Nybegynder
28. oktober 2005 - 10:21 #6
hvis man bruger:
MemoryStream ms = new MemoryStream(imageBytes);
Bitmap img = Image.FromStream(ms);
så får jeg en fejl med at jeg ikke kan converte fra image til bitmap.
og herefter at jeg ikke kan convertere fra system.drawing.image til system.web.ui.webcontrol.image
Avatar billede rumbassen Nybegynder
28. oktober 2005 - 10:55 #7
Her er lidt kode:
MemoryStream ms = new MemoryStream((byte[])Item["Picture"],true);
Bitmap img = (Bitmap)System.Drawing.Image.FromStream(ms);
TableRow tr = new TableRow();
TableCell tc = new TableCell();

tr.Cells.Add(img);

Nu er der kun fejl hvor jeg prøver at læge img ind i tabellen.
fejlen er:
Cannot convert type 'System.Drawing.Bitmap' to 'System.Web.UI.WebControls.Image'
Avatar billede rumbassen Nybegynder
31. oktober 2005 - 16:02 #8
Indtil videre har prøvet følgende hvis der ikke skal gemmes i filer.

der skal oprettes en ekstra webside hvor man kan få en bitstrøm fra...
clsSQL objSQL = new clsSQL();
Response.BinaryWrite(objSQL.DownloadSmallImage(Request["ImageID"]));

man kalder herefter denne side og sender et bytearray med, som er hentet fra databasen.
img1.ImageUrl = "ShowImage.aspx?ImageID="+ bytearray[];

nu må jeg lige have testet hvad der er hurtigst, men det er nok filerne.
Avatar billede Syska Mester
02. november 2005 - 22:11 #9
Du må da gerne side en melding her omrking forskel på hastighed......
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