字节数组输出为图像

时间:2009-10-16 12:33:24

标签: asp.net image bytearray

我知道可以这样做:

<asp:Image runat="server" ImageUrl="~/MyImageHandler.ashx?imageid=2" />

...但我有一种情况,字节数组数据只对页面可用(即,在会话中不可用,并且不能被id引用)所以我不能将ImageUrl指向另一个页。

有没有办法给asp:图像字节数组呈现为图像?

2 个答案:

答案 0 :(得分:3)

您必须处理的主要问题是<asp:Image/>元素会呈现为常规<img />,需要src属性指向某个网址。

在这种情况下,我看到了两个毛茸茸的选择:

  • 使用here描述的技术将编码在Base64中的图像嵌入src属性中。请注意,可以使用Internet Explorer。

  • 将Base64编码的图像作为隐藏的<input />元素嵌入到页面中。然后,您可以使用JavaScript将数据返回发送到服务器,然后使用Response.Write()将其发送回浏览器(当然,确保正确设置Content-Type)

答案 1 :(得分:2)

唯一合适的解决方案是将字节数组放入会话中。如果您担心唯一性(多人获取彼此的字节数组),请使用随机GUID作为密钥。