控制 foreach 循环中显示的 <div> 标签数量
Controlling number of <div> tags shown in foreach loop
我正在构建一个具有 asp.net 个核心剃须刀页面的电子商务网站,我目前正在构建产品页面。我希望能够控制每行显示的 <div>
标签的数量。我目前的代码只是尽可能地压缩(这是我所期望的)我只是不知道如何控制它。非常感谢任何帮助。
<div class="container">
<div class="row">
@foreach (var item in Model.Products)
{
<div class="col-sm">
@Html.DisplayFor(modelItem => item.Name)
</div>
}
</div>
其中 Model.Products 包含 25 种产品的列表
您希望如何控制标签的数量?
你有最大数量限制吗?
如果是这样,您可以尝试只拿前 "DivMaxAmount" 件物品:
@{int DivMaxAmount = 25}
<div class="container">
<div class="row">
@foreach (var item in Model.Products.Take(DivMaxAmount))
{
<div class="col-sm">
@Html.DisplayFor(modelItem => item.Name)
</div>
}
</div>
此示例将使用集合中的前 25 个项目创建 25 个 div,但您可以根据需要更改此数字。
请注意,如果您想要一致的顺序,您可能希望在拿走物品之前先订购集合:
Model.Products.OrderBy(p => p.PropertyToOrderBy).Take(DivMaxAmount)
这些方法在 System.Linq 命名空间中可用。
我正在构建一个具有 asp.net 个核心剃须刀页面的电子商务网站,我目前正在构建产品页面。我希望能够控制每行显示的 <div>
标签的数量。我目前的代码只是尽可能地压缩(这是我所期望的)我只是不知道如何控制它。非常感谢任何帮助。
<div class="container">
<div class="row">
@foreach (var item in Model.Products)
{
<div class="col-sm">
@Html.DisplayFor(modelItem => item.Name)
</div>
}
</div>
其中 Model.Products 包含 25 种产品的列表
您希望如何控制标签的数量?
你有最大数量限制吗? 如果是这样,您可以尝试只拿前 "DivMaxAmount" 件物品:
@{int DivMaxAmount = 25}
<div class="container">
<div class="row">
@foreach (var item in Model.Products.Take(DivMaxAmount))
{
<div class="col-sm">
@Html.DisplayFor(modelItem => item.Name)
</div>
}
</div>
此示例将使用集合中的前 25 个项目创建 25 个 div,但您可以根据需要更改此数字。
请注意,如果您想要一致的顺序,您可能希望在拿走物品之前先订购集合:
Model.Products.OrderBy(p => p.PropertyToOrderBy).Take(DivMaxAmount)
这些方法在 System.Linq 命名空间中可用。