mvc从数据库显示图片
时间: 2023-07-25 18:21:31 浏览: 53
在MVC架构中,将图片从数据库中显示可以通过以下步骤实现:
1. 在Model层中,编写相应的代码从数据库中获取图片数据,并将其转换成字节数组。
2. 在Controller层中,将字节数组转换成Base64编码的字符串,并将其传递到View层。
3. 在View层中,使用<img>标签将Base64编码的字符串作为src属性值,即可在页面中显示图片。
以下是一个示例代码:
Model层代码:
```
public byte[] GetImageData(int id)
{
using (SqlConnection conn = new SqlConnection("连接字符串"))
{
conn.Open();
SqlCommand cmd = new SqlCommand("SELECT ImageData FROM Images WHERE Id = @Id", conn);
cmd.Parameters.AddWithValue("@Id", id);
byte[] imageData = (byte[])cmd.ExecuteScalar();
return imageData;
}
}
```
Controller层代码:
```
public ActionResult GetImage(int id)
{
byte[] imageData = model.GetImageData(id);
string base64String = Convert.ToBase64String(imageData);
ViewData["ImageString"] = base64String;
return View();
}
```
View层代码:
```
<img src="data:image/png;base64,@ViewData["ImageString"]" />
```
其中,data:image/png;base64 表示图片的格式,@ViewData["ImageString"] 表示Base64编码的字符串。