在aspx页面中的图像标记内显示ImageStream

时间:2013-06-13 07:42:40

标签: c# asp.net bytearray filestream

我从db获取了一个imageStream,这是一个Byte[],我希望在html图像标记中显示它。

目前我有以下内容: -

<img src="data:image/png;base64,<%=ImageStream %>" alt="<%=ImageName %>" />

我试图从代码隐藏中获取如下的ImageStream: -

ImageStream = Encoding.ASCII.GetString(CurrentUser.Avatar);

CurrentUser.AvatarByte[]

如何将此字节显示在图像标记中?

感谢您的帮助和时间

2 个答案:

答案 0 :(得分:1)

正如您的图片src明确指出的那样,image/png;base64;您的流必须是Base64编码。

<img src="data:image/png;base64,<%=Convert.ToBase64String(CurrentUser.Avatar)%>"
     alt="<%=ImageName %>" />

答案 1 :(得分:0)

您需要将其编码为base64 - 使用System.Convert.ToBase64String(byte[])

ImageStream = System.Convert.ToBase64String(CurrentUser.Avatar);