0

我正在为从数据库填充的 ListView 使用动态 ItemTemplate。当我需要显示字符串列“Parametr”(或其他一些数据类型)时,我会这样做:

     //my .ascx file
     <li><%# Eval("Parametr") %> </li>

如何显示存储图像的 varbinary 列?谢谢。

编辑:

如果有人需要,这里还有一些代码:

<asp:ListView ...  DataSourceID="database"   ></asp:ListView>
<asp:SqlDataSource ... ID="database" SelectCommand="SELECT image FROM image_table"></asp:SqlDataSource>
4

1 回答 1

1

您可以使用“内联图像”。例如,该技术在 html 中嵌入的 Base64 编码图像进行了描述(搜索 base64 图像 html 以获取其他资源)。

获取图像数据字节的 base64 编码字符串,例如使用Convert.ToBase64String,然后使用<img src=data:image/gif;base64,并附加图像数据。

所以你可以使用类似这样的东西来绑定它

<img src='<%# string.Format("data:image/gif;base64,{0}",
 Convert.ToBase64String((byte[])Eval("ImageDataBase64")))%>'/>

当然,这只建议用于小图像。另请注意,您应该将“gif”更改为图像的实际格式。

于 2012-10-21T22:35:35.650 回答