我正在使用ASP.NET MVC并且有一个模型在其中一个字段中有一个图像(字节数组)。我正在尝试将此图像输出到img标记的src属性中。我希望做<img src='<%= Model.VenueImage %>'>
之类的事情。我怎么能这样做?
答案 0 :(得分:19)
也许Inline Images with Data URLs想法?
内联图像使用数据URI方案 将图像直接嵌入到Web中 页面。根据RFC 2397的定义,数据 URI旨在嵌入小数据 项目作为“即时”数据,就像它们一样 在外部引用。运用 内联图像可以保存HTTP请求 外部引用的对象。
System.Drawing.Image image = GetImageFromSomewhere(...);
byte[] imageData = ImageToByteArray(image);
string imageBase64 = Convert.ToBase64String(imageData);
string imageSrc = string.Format("data:image/gif;base64,{0}", imageBase64);
然后在页面的某个位置:
<img src= "<%= ImageSrcBytes %>" />
AFAIK适用于Opera 7.2 +,Firefox,Safari,Netscape,Mozilla和IE8 +(IE8高达32kb)。
对于早期版本的IE,有一种解决方法 - MHTML。
如何执行此操作的示例是here。
答案 1 :(得分:0)
浏览器使用src属性向服务器发出单独的请求,以获取图像的内容。它不会将src中的字节显示为图像本身。
所以你需要记住那些字节(session?)并使用一个处理程序(你输入src属性的url)让浏览器请求它们。