我正在构建一个用户控件,它将在页面上重复可变次数。我正在尝试确定处理要加载到控件中的数据的最有效方法。为了简单起见,假设它的结构如下:
<table>
<tr>
<td>Header Item</td>
</tr>
<tr>
<td>Body Item n</td>
</tr>
<tr>
<td>Body Item n+1</td>
</tr>
<tr>
<td>Body Item n+2</td>
</tr>
<tr>
<td>etc.</td>
</tr>
<tr>
<td>Footer Item</td>
</tr>
</table>
将加载到此控件中的所有数据都来自 SQL 查询。Body 项目将在控件的每次迭代中发生变化,但 Header 和 Footer 项目将是相同的,这就是我试图在我可以看到的几个选项之间做出决定的地方。
- 将查询构建到控件本身的代码中,并为控件的每次迭代重复它,或者:
- 从将使用控件的 .aspx.cs 页面查询数据,并在创建控件时将它们作为属性传递。
- ?
选项 1 似乎效率很低。如果我们只讨论两个项目,那么我可能只是倾向于接受效率低下,但我们谈论的更多。
选项 2 似乎是合理的,但我不知道这是否真的比选项 1 更好。
想法?其他选择?