我正在使用 DataTable 中的数据动态生成 HtmlGeneric 控件。我需要将 HTML 连接到每组 3 的开头和结尾。例如,我的表格如下所示:
Title Body
------------------------------
Order 1 This is body 1
Order 2 This is body 2
Order 3 This is body 3
Order 4 This is body 4
Order 5 This is body 5
Order 6 This is body 6
我目前正在生成这样的 HTML,没有问题:
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 1</h5>
<p class="card-text">This is body 1</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 2</h5>
<p class="card-text">This is body 2</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 3</h5>
<p class="card-text">This is body 3</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 4</h5>
<p class="card-text">This is body 4</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 5</h5>
<p class="card-text">This is body 5</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 6</h5>
<p class="card-text">This is body 6</p>
</div>
</div>
我需要结合一个 foreach 循环和一个计数器,在每 3 张这样的卡片的开头和结尾处将一个 div 与一个卡片组类连接起来。当然,实际上有比 6 行多得多的行数:
<div class="card-group">
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 1</h5>
<p class="card-text">This is body 1</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 2</h5>
<p class="card-text">This is body 2</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 3</h5>
<p class="card-text">This is body 3</p>
</div>
</div>
</div>
<div class="card-group">
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 4</h5>
<p class="card-text">This is body 4</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 5</h5>
<p class="card-text">This is body 5</p>
</div>
</div>
<div class="card">
<div class="card-body">
<h5 class="card-title">Order 6</h5>
<p class="card-text">This is body 6</p>
</div>
</div>
</div>
它非常简单,无需连接额外的 HTML。这是在我的页面加载方法中执行的:
DataTable dtCards = GetData();
foreach (DataRow row in dtCards.Rows)
{
var titleText = row["Title"].ToString();
var bodyText = row["Body"].ToString();
CreateDiv(titleText, bodyText); //method to create HmtlGeneric Controls
}
我假设我需要在 CreateDiv 方法中将一个 foreach 循环与一个计数器结合起来,但我无法完全理解这将如何发挥作用。特别是如果有奇数行 - 卡组 div 总是需要最后一行的结束标签。