@model IEnumerable<Framely2011.Models.Frames>
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
<p>
@Html.ActionLink("Create New", "Create")
</p>
<table>
<tr>
<th></th>
<th>
PictureID
</th>
<th>
UserID
</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })
</td>
<td>
@item.PictureID
</td>
<td>
@item.UserID
</td>
<td>
Meta 1: @item.MetaTagsObj.Meta1 Meta 2: @item.MetaTagsObj.Meta2 Meta 3: @item.MetaTagsObj.Meta3
</td>
</tr>
}
</table>
如果模型出现空白,我怎么才能让它打印“没有框架”以便根本不打印任何html表格,我认为一个简单的if
语句就足够了,但我是剃须刀的新手,我不确定如何做到这一点。
答案 0 :(得分:28)
将其添加到页面顶部:
@using System.Linq
然后用这个块替换你的代码。
@if( !Model.Any() )
{
<tr><td colspan="4">There are no Frames</td></tr>
}
else
{
foreach (var item in Model)
{
<tr>
<td>
@Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })
</td>
<td>
@item.PictureID
</td>
<td>
@item.UserID
</td>
<td>
Meta 1: @item.MetaTagsObj.Meta1 Meta 2: @item.MetaTagsObj.Meta2 Meta 3: @item.MetaTagsObj.Meta3
</td>
</tr>
}
}
答案 1 :(得分:0)
您也可以将值传递给控制器中的Viewbag表单,并在下面的视图中进行检查。 1 - 是控制器 -
int numberOfRecords = db.Jobs.ToList().Count(); -
ViewBag.numRecords = numberOfRecords;
ViewBag.ReturnUrl = returnUrl;
return View();
2 - 然后只需查看视图
@if (ViewBag.numRecords > 0)