如何在GridView中显示图像?

时间:2012-05-02 17:46:43

标签: c# asp.net gridview

我在数据库表中有一个image列,我想在GridView列中显示这个图像,我该如何实现呢?

2 个答案:

答案 0 :(得分:1)

假设您将数据库中的图像保存为字符串(图像的路径),您可以将gridtemplate放在gridview中,如下所示:

<asp:TemplateField>
  <ItemTemplate>
  <asp:image ID="image" runat="server" ImageUrl='<%# DataBinder.Eval(Container.DataItem, "imagePath") %>'  />
  </ItemTemplate>
</asp:TemplateField>

答案 1 :(得分:0)

与@JaneDoe建议类似,您需要指定ImageUrl,但是在绑定时,您需要将ImageUrl属性设置为指向HttpHandler,并将主键作为查询字符串参数。

e.g。 <asp:Image runat="server" ImageUrl="/myImageHandler.axd?pk=<%# Eval("PrimaryKey") %>"/>

然后,您需要配置HttpHandler以发送image / jpeg的响应或您正在存储的任何图像类型,然后根据传入的PK,在查询字符串和输出中读取数据库中的varbinary数据该数据到响应流。