所以我有一个显示商店信息的页面。我知道哪些商店具有活动和非活动状态。我想知道是否有办法让它默认显示活动商店第一个和非活动状态,或者仅显示活动状态。
这是我认为需要完成这项工作的代码部分。这是我尝试使用的IsActive系列。我完全不确定如何做到这一点。
<table id="SAPIPartnerList" class="display">
<thead>
<tr>
<td>Partner Name</td>
<td>Partner ID</td>
<td>Is Active</td>
<td>Account Manager</td>
</tr>
</thead>
<tbody>
@foreach (var i in Model.SAPIPartners)
{
<tr>
<td>@Html.ActionLink(i.Description, "SAPI", "Partner", new { siteNo = i.SiteNo }, null)</td>
<td>@Html.DisplayFor(modelItem => i.PartnerID)</td>
<td>@(i.IsActive ? "Active" : "Inactive")</td>
<td>@Html.DisplayFor(modelItem => i.PartnerAccountManager)</td>
</tr>
}
</tbody>
</table>
}
else if (!String.IsNullOrEmpty(ViewBag.Query))
{
<div class="no-results-row">No Results found</div>
}
提前感谢您的帮助。
答案 0 :(得分:1)
如果SAPIPartners
以某种方式实现IEnumerable
,您可以使用LINQ按bool
值排序:
@foreach (var i in Model.SAPIPartners.OrderByDescending(p => p.IsActive))
false
小于true
,这就是我们订购降序的原因。
之后,如果有帮助,您可以通过其他方式订购:
Model.SAPIPartners.OrderByDescending(p => p.IsActive).ThenBy(p => p.Description)