显示列表图像从数据库在剃刀
本文关键字:剃刀 数据库 列表 图像 显示 | 更新日期: 2023-09-27 17:52:54
我正在做一个ASP。. NET应用程序,我使用Razor,我想在我的视图中显示多个图像。我已经在数据库中存储了这些图像。我的代码只能显示一个图像。
我在数据库中有一个表,它有以下内容:- Id,图像,…并且我想只显示图像,我试图在索引中显示图像,我在视图中有以下内容:
<img src="@Url.Action("GetImage", "Image", new {id=3})" />
在ImageController中我有:
public ActionResult GetImage(int id)
{
using (var db = new Bd_scanitEntities())
{
var firstOrDefault = db.ImgOrgSet.Where(
c => c.Id == id).FirstOrDefault();
if (firstOrDefault != null)
if (firstOrDefault != null)
{
byte[] image = firstOrDefault.image;
return File(image, "image/jpg");
}
else
{
return null;
}
}
return View();
}
你能帮我显示数据库中包含的所有图像吗
在您的视图中做一个for
循环并调用id= index
的Action方法。如果你给我看你的视图代码,我可以用你的代码显式地解释我的解释如果数据库中表中的id不是递增的,最好使用foreach
循环。假设您删除了一个图像,然后在表中添加了另一个图像。我认为该指标不符合Count
的性质。
1方法
从数据库中获取ImagesList,就像你从action中获取ImagesList一样,并动态填充它们,这里是一段代码,它会给你一些想法,如何完成:
@foreach(var ID in Ids)
{
<img src="@Url.Action("GetImage", "Image", new {id=ID})" />
}
第二方法
另一种方法是,而不是将图像存储在数据库中,存储其路径,并在运行时呈现它们,使用相同的方式,只是传递路径在src
属性