仅在foreach语句中显示10个项目

时间:2013-05-13 19:44:36

标签: c# asp.net-mvc razor

我的应用程序中有以下剃刀代码。我怎么能拥有它所以它只从模型中的10个项目。所以一旦它在我的模型中为10个项目完成了下面的代码,就会停止

 @foreach (var item in this.Model.Leaderboard) {
    <tr>
        <td>@Html.DisplayFor(modelItem => item.userName)</td>
        <td> @Html.DisplayFor(modelItem => item.score)</td>   
    </tr>
}

2 个答案:

答案 0 :(得分:7)

您可以使用Linq的Take()方法。

@foreach (var item in this.Model.Leaderboard.Take(10)) 
{
     <tr>
         <td>@Html.DisplayFor(modelItem => item.userName)</td>
         <td> @Html.DisplayFor(modelItem => item.score)</td>
     </tr>
}

Henk Holterman所示,如果您不需要整个集合,则应将集合限制在创建集合的位置,而不是在视图中。

MSDN参考here

答案 1 :(得分:2)

您可以使用LINQ .Take()方法。