我有一个数据库,我已保存图像
如何显示图像? 现在我像这样显示它
<img alt="@album.Room_number" src="@album.ImageData" />
但我明白了:
答案 0 :(得分:0)
如果您的客户端浏览器支持,您可以使用Data URI scheme:
<img alt="@album.Room_number" src="data:image/jpeg;base64,@Convert.ToBase64String(album.ImageData)" />
如果浏览器不支持,则必须创建一个查询数据库并将图像流式传输到响应的控制器操作:
public ActionResult Image(int id)
{
byte[] imageData = ... go and fetch the corresponding image data from the database
return File(imageData, "image/jpeg");
}
然后:
<img alt="@album.Room_number" src="@Url.Action("Image", new { id = album.ImageId })" />
当然在这种情况下,您不应该在初始请求中获取ImageData
属性,以避免在视图中不再使用它时进行不必要的查询。
答案 1 :(得分:-1)
您需要使用return File(...)
创建一个为原始图像数据提供服务的控制器操作。
然后你可以写<img src="@Url.Action(...)" />
。