在asp图像控件中显示来自Sql Server的图像

时间:2012-07-02 00:21:43

标签: c# asp.net sql image byte

以下是我的代码:

page.aspx:

<asp:Image ID="Image1" runat="server" />

代码背后:

byte[] IMG = class.readImg(id);
Image1.ImageUrl = "~/page.aspx?ID=" + id.ToString();
Context.Response.ContentType = "image/jpg";
Context.Response.BinaryWrite(IMG);

对于这段代码,page.aspx中唯一显示的是读取的图像。

2 个答案:

答案 0 :(得分:2)

无需使用HttpHandler

只需使用以下代码即可 将数据从SQL Server检索到DataTable。

进入.ASPX页面

<img runat=server id="logoImg" alt="" src="" />

进入C#代码

byte[] imgArray =  (byte[])dTable.Rows[0][8];
logoImg.Src = "data:image/png;base64," + Convert.ToBase64String(imgArray);

答案 1 :(得分:0)

以下是类似的近期问题的解决方案:

Display image from database in ASP.net with C#

您需要使用HttpHandler类来检索和写入流。