dynamisches Bild (von DB) mit Generic Handler
Ich versuche, mit einem generischen Handler Bilder abzurufen und anzuzeigen, die in einer Datenbank gespeichert sind.
Aber es funktioniert einfach nicht. Ich habe versucht, den Code unten zu überprüfen, aber ich kann es nicht zum Laufen bringen.
Kann jemand erkennen, was ich falsch mache oder Vorschläge haben?
<%@ WebHandler Language="C#" Class="IconsDb" %>
using System;
using System.Web;
using System.Linq;
using System.Data.Entity;
public class IconsDb : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World");
Int32 iconId;
if (context.Request.QueryString["id"] != null)
iconId = Convert.ToInt32(context.Request.QueryString["id"]);
else
throw new ArgumentException("No parameter specified");
context.Response.ContentType = "image/gif";
//System.IO.Stream strm = ShowEmpImage(iconId);
var db = new UdINaturen.UdINaturenContext();
var GetIcon = (from i in db.subcategoryicons
where i.id == iconId
select i.picture).FirstOrDefault();
object img = GetIcon;
System.IO.MemoryStream memStream= new System.IO.MemoryStream((byte[])Convert.FromBase64String(GetIcon));
System.Drawing.Bitmap bitImage=new System.Drawing.Bitmap((System.Drawing.Bitmap)System.Drawing.Image.FromStream(memStream));
byte[] buffer = memStream.ToArray();
context.Response.ContentType = "image/gif";
//context.Response.OutputStream.Write(buffer, 0, buffer.Length);
//context.Response.WriteFile();
context.Response.BinaryWrite(buffer);
//context.Response.Flush();
}
public bool IsReusable {
get {
return true;
}
}
}