我在数据库中显示存储为Varbinary(Max)
在Razor中我将它转换为字符串并播种为<img>
。它在IE中工作,但在FF和Chrom中没有。我尽我所能,但无法弄清楚为什么会这样。请帮忙。
请在IE(工作)和(FF&amp; Chrome都不能正常工作)中看到这个生成的html:
注意: 我使用以下代码从Asp.Net MVC Razor生成这个html:
<img src=@(!Model.Photos.Any() ? "/Content/Images/Cars/CarPlaceHolder.jpg"
:Encoding.ASCII.GetString(Model.Photos.FirstOrDefault().Document))></img>
答案 0 :(得分:1)
我也在做同样的事情,但采用不同的方法.. 控制器
using (var binaryReader = new BinaryReader(Request.Files["files"].InputStream))
{
Image = binaryReader.ReadBytes(Request.Files["files"].ContentLength);
}
查看
if (Model.Logo != null)
{
string imageBase64 = Convert.ToBase64String(Model.Logo);
string imageSrc = string.Format("data:image/gif;base64,{0}", imageBase64);
<img src="@imageSrc" class="self-image" />
}
else
{
<img src=YOUR IMAGE class="self-image" />
}
它适用于IE和Chrome