10. maj 2006 - 15:07Der er
11 kommentarer og 1 løsning
Billeder i formview fra codebehind?
Hej, Jeg henter x antal billeder op af min database med en repeater og i ItemDataBound får jeg fat i billedets navn. Nu skal jeg så skrive disse billeder ud i et formview, men hvordan gør jeg det smartest?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hvis du skal vise billederne - skal du sørge for at du har en url du kan henvise til, så du skal lave en aspx-fil (en ashx fil er at foretrække) - der alene returnerer billedet. Ser lige om jeg kan finde et link. Mvh
// en imageserver (ImageServer.ashx) <%@ WebHandler Language="C#" Class="ImageServer" %>
using System; using System.Web; using System.Drawing; using System.Drawing.Imaging; using System.IO;
public class ImageServer : IHttpHandler { public void ProcessRequest (HttpContext context) { string imageFolder = @"C:\testfiles"; string imageFileName = context.Request.QueryString["imageFileName"]; Bitmap bmp = new Bitmap(Path.Combine(imageFolder, imageFileName)); context.Response.ContentType = "image/jpeg"; bmp.Save(context.Response.OutputStream, ImageFormat.Jpeg); bmp.Dispose(); }
public bool IsReusable { get { return true; } } }
Du skal så self. ikke hente filen i filsystemet, men suge det fra databasen som rå bytes, som du så kan lægge i din outputstream - så du skal lave koden lidt om til noget i stil med:
Hej snepnet, Men jeg får jo ikke billederne fra en querystring. Jeg hiver billed-filnavnet op af databsen via repeateren og derfra skal jeg jo bare smide billederne ud på siden. Billederne ligger på filsystemet. Kan man ikke generere et asp:imgage on the fly og smide det ind i et panel eller lignende?
Ahh... ja det gør det jo lidt enklere :o) Så skal du bare sørge for at billedet kan hentes via en url, og så sætte et Image ind, og sikre at ImageUrl-property'en er sat til den respektive url. Mvh
(yes) Jeg arbejder med vb.net og har oversat din kode til følgende :) Dim img As Image = New Image() img.ImageUrl = "/asdf/" ditPanel.Controls.Add(img)
Men den acceptere ikke Image(), får blå streg under og følgende error: 'New' cannot be used on a class that is declared 'MustInherit'
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.