ASP.NET IEnumerable视图

时间:2013-04-02 16:24:50

标签: asp.net-mvc ienumerable

我有一个IEnumerable视图,它返回一个备注列表,但是我还有一个菜单,其中包含一个链接,该链接包含来自与备注链接的不同实体的学生编号,这很难解释,所以我我会发布我的代码

<a href="@Url.Content("~/StudentGegevens/index/"+ Model.LRL_NR)" class="buttonStudentGegevens"><img src="../../images/ViewAccount.png"/> Student gegevens </a>
<a href="@Url.Content("~/StudentGegevens/MedischeInformatie/" +@Model.LRL_NR)" class="buttonMedischeInformatie"><img src="../../images/ViewMedischeInfo.png"/> Medische informatie </a>
<a href="@Url.Content("~/StudentGegevens/BijlageenCommentaar/" +@Model.LRL_NR)" class="buttonBijlagenCommentaar"><img src="../../images/ViewBijlage.png"/> Bijlage en commentaar </a>

foreach(var item in Model)不起作用,因为我只希望菜单显示一次。

正如您在此处所看到的,我将学生编号提供给@Model.LRL_NR的链接,但是使用IEnumerable视图,您无法执行@Model.LRL_NR,我有什么方法可以使用有@Model.LRL_NR视图的IEnumerable

1 个答案:

答案 0 :(得分:1)

IEnumerable进行迭代,并为其中的每个项目写出链接:

@foreach(var item in Model)
{
     <a href="@Url.Content("~/StudentGegevens/index/"+ item.LRL_NR)" class="buttonStudentGegevens"><img src="../../images/ViewAccount.png"/> Student gegevens </a>
     <a href="@Url.Content("~/StudentGegevens/MedischeInformatie/" +@item.LRL_NR)" class="buttonMedischeInformatie"><img src="../../images/ViewMedischeInfo.png"/> Medische informatie </a>
     <a href="@Url.Content("~/StudentGegevens/BijlageenCommentaar/" +@item.LRL_NR)" class="buttonBijlagenCommentaar"><img src="../../images/ViewBijlage.png"/> Bijlage en commentaar </a>
}

根据您的说明,您需要同时访问LRL_NRREMARK列表。

执行此操作的一种方法是创建一个封装它们的类,并将其用作Model

public class RemarksModel
{
   public int LRL_NR { get; set }
   public IEnumerable<PvBempty.REMARK> Remarks { get; set }
}

这将允许你这样做:

<a href="@Url.Content("~/StudentGegevens/index/"+ Model.LRL_NR)" class="buttonStudentGegevens"><img src="../../images/ViewAccount.png"/> Student gegevens </a>
<a href="@Url.Content("~/StudentGegevens/MedischeInformatie/" +@Model.LRL_NR)" class="buttonMedischeInformatie"><img src="../../images/ViewMedischeInfo.png"/> Medische informatie </a>
<a href="@Url.Content("~/StudentGegevens/BijlageenCommentaar/" +@Model.LRL_NR)" class="buttonBijlagenCommentaar"><img src="../../images/ViewBijlage.png"/> Bijlage en commentaar </a>

foreach(var item in Model.Remarks)
{
    // each item is a PvBempty.REMARK
}