MVC在一个视图中检索许多数据
本文关键字:视图 检索 多数据 一个 MVC | 更新日期: 2023-09-27 18:13:57
我有asp.net MVC应用程序,可以从数据库检索数据。它看起来像这样:
如果我的url是这样的:
myurl.com/Home/Index/1
我的观点是这样的:[https://scontent-b-fra.xx.fbcdn.net/hphotos-xfp1/t31.0-8/10571949_782177481813619_1929089026797570629_o.jpg][1]
如果url像这样:-
myurl.com/Home/Index/2
视图如下:https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-xpa1/t31.0-8/10519689_782177478480286_8967524557745769669_o.jpg
等。
我正在传递和在url这是我的数据库中数据的id:-
public ActionResult Index(int id)
{
BIOEntities db = new BIOEntities();
AddBio bio = new AddBio();
Biography biography = db.Biographies.Where(x => x.Id == id).FirstOrDefault();
bio.Id = biography.Id;
bio.Photo = biography.Photo;
bio.Name = biography.Name;
bio.Position = biography.Position;
return View(bio);
}
现在我想让它如果我的url将
myurl.com/Home/Index
它必须像这样检索数据:https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpa1/t31.0-8/10454247_782178191813548_1334099737795866885_o.jpg
谁能告诉我怎么做呢
[1]: https://%20scontent-b-fra.xx.fbcdn.net/hphotos-xfp1/t31.0-8/10571949_782177481813619_1929089026797570629_o.jpg
和我的视图(Customhelper是图片…):
@model BioMVC.Models.AddBio
@using BioMVC.CustomHtmlHelpers
@{
ViewBag.Title = "Index";
Layout = "~/Views/_layout.cshtml";
}
<div id="first">
<div class="display-field">
@Html.Image(@Model.Photo, new { @id = "FirstPhoto" })
</div>
<legend class="orangeText">@Model.Name</legend>
<legend class="orangeText">@Model.Position</legend>
</div>
<div id="second">
<div class="display-field">
@Html.Image(@Model.Photo, new { @id = "secondPhoto" })
</div>
<legend class="orangeText">@Model.Name</legend>
<legend class="orangeText">@Model.Position</legend>
</div>
<div id="third">
<div class="display-field">
@Html.Image(@Model.Photo, new { @id = "thirdPhoto" })
</div>
<legend class="orangeText">@Model.Name</legend>
<legend class="orangeText">@Model.Position</legend>
</div>
<div id="fourth">
<div class="display-field">
@Html.Image(@Model.Photo, new { @id = "fourthPhoto" })
</div>
<legend class="orangeText">@Model.Name</legend>
<legend class="orangeText">@Model.Position</legend>
</div>
george,
没有看到您当前的视图代码,我假设它是沿着行:
@model yournamespace.models.AddBio
因此,将只显示当前索引操作方法中的单个实例。您需要做的是将该模型创建为List<AddBio>
,如下所示:
@model List<yournamespace.models.AddBio>
然后,您可以遍历列表以像之前一样填充。您还需要更改索引方法,以引用List<>,而不是单个实体(提示:删除第三行上的.FirstOrDefault()
是您的起点—其余的都是常识,传递List<>而不是单个实例)。
希望对你有帮助。
[edit] -根据stephen muecke的回应,您还应该测试可空的id -好点!!