这里是我的视图代码:元模型计数检查
@model IEnumerable<StudentRegistrationPortal.Models.CourseRegisterModel>
@{
ViewBag.Title = "Welcome Student";
}
<h2>Welcome
@Context.User.Identity.Name
</h2>
@Html.ActionLink("[Sign Out]", "SignOut", "Student")
<ul>
<li>@Html.ActionLink("Register Courses", "registerCourses", "Course")</li>
</ul>
<%if (Model.Count == 5) { %>
<table border="1">
<tr>
<th>
RollNumber
</th>
<th>
Course Code
</th>
<th>
Course Name
</th>
<th>Add/Drop</th>
</tr>
<tr>
<td>
@Context.User.Identity.Name
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(0).Course.Code)
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(0).Course.Name)
</td>
<td>
@Html.ActionLink("Drop", "Drop", new { id=-1 })
</td>
</tr>
<tr>
<td>
@Context.User.Identity.Name
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(1).Course.Code)
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(1).Course.Name)
</td>
<td>
@Html.ActionLink("Drop", "Drop", new { id=-1 })
</td>
</tr>
<tr>
<td>
@Context.User.Identity.Name
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(2).Course.Code)
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(2).Course.Name)
</td>
<td>
@Html.ActionLink("Drop", "Drop", new { id=-1 })
</td>
</tr>
<tr>
<td>
@Context.User.Identity.Name
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(3).Course.Code)
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(3).Course.Name)
</td>
<td>
@Html.ActionLink("Drop", "Drop", new { id=-1 })
</td>
</tr>
<tr>
<td>
@Context.User.Identity.Name
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(4).Course.Code)
</td>
<td>
@Html.DisplayFor(modelItem => Model.ElementAt(4).Course.Name)
</td>
<td>
@Html.ActionLink("Drop", "Drop", new { id=-1 })
</td>
</tr>
</table>
<% } %>
我已经加入IF条件只绘制表,如果模式计数等于5,但仍,如果模型不包含任何数据,然后它给错误:
Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index
什么是错的IF条件?
谢谢。
如果计数不等于5再没有什么应该页面上显示... – Azeem
@walkhard它会显示什么 –
@Nida Sulheri我建议你使用或foreach循环 –