【发布时间】:2012-11-10 15:08:29
【问题描述】:
我想在 MVC 4.0 视图页面中显示一个包含以下代码的表格:
<table >
<thead>
<tr>
<th>Student Name</th>
<th>Gaurdian</th>
<th>Associate Teacher</th>
</tr>
</thead>
@foreach(var stud in ViewBag.students)
{
<tr>
<td>@stud.Name</td>
</tr>
}
</table>
这很好用。但是,监护人信息和助理教师信息放在不同的 ViewBag 对象中,例如 ViewBag.guardians 和 Viewbag.assoc。我应该如何遍历它们以将它们显示在所需的表格单元格中??
循环内的循环
@foreach(var student in ViewBag.students)
{
foreach(var gaurdian in ViewBag.guardians)
{
<tr>
<td>@student.Name</td>}
<td>@guardian.Name</td>
</tr>
}
}
听起来很荒谬。请给我适当的解决方案。 学生类包含监护人字段,但它有自己的另一个类,如下所示:
public class Student
{
public string Name {get;set;}
public string RollNo {get;set;}
public virtual Guardian Guardian {get;set;}
public IList<Guardian> GuardianName {get;set;}
}
public class Guardian
{
public string Name{get;set;}
public string MobNumber{get;set;}
}
public class Associate
{
public string AID{get;set;}
public virtual Student Student{get;set;}
public string RollNo {get;set;}
}
【问题讨论】:
-
我觉得如果你把学生班、监护班和副教师班的样子展示出来会更容易帮助到你。
-
请正确缩进您的代码
-
你的
tr元素被搞砸了。您在 foreach 循环中打开了许多,但在循环后只关闭一次,留下许多未打开的行,并导致视觉问题。 -
实际上只是复制粘贴并删除了额外的细节,导致错误地删除了该标签并在其他地方添加了...我现在已经更正了..!!
-
你为什么要使用 Viewbag?为什么不使用 Model 或 ViewModel?
标签: c# asp.net-mvc