【发布时间】:2013-03-22 22:08:50
【问题描述】:
我在从 SqlDataSource 检索总行数时遇到了一些困难。我使用 SqlDataSource 中的 SELECT 语句的结果来创建一个 ListView,但被困在生成一些可以让我轻松获得总行数的代码。我不会展示我使用的所有不同代码,而是向您展示简单的解决方案。
【问题讨论】:
标签: asp.net listview sqldatasource dataview rowcount
我在从 SqlDataSource 检索总行数时遇到了一些困难。我使用 SqlDataSource 中的 SELECT 语句的结果来创建一个 ListView,但被困在生成一些可以让我轻松获得总行数的代码。我不会展示我使用的所有不同代码,而是向您展示简单的解决方案。
【问题讨论】:
标签: asp.net listview sqldatasource dataview rowcount
如果您将SqlDataSource 绑定到ListView,为什么不直接从ListView 获取计数?
LabelRows.Text = ListView1.Items.Count
【讨论】:
假设我有一个名为“dsResults”的 SqlDataSource,它从数据库表中选择某些记录。下面的代码通过 DataView 从该 SqlDataSource 中检索 Total Row Count,并让您在 Label 中显示它或在 CASE 语句中使用它(在 Page_Load 处执行):
Dim dssa As New DataSourceSelectArguments()
dssa.AddSupportedCapabilities(DataSourceCapabilities.RetrieveTotalRowCount)
dssa.RetrieveTotalRowCount = True
Dim dv As DataView = DirectCast(dsResults.[Select](dssa), DataView)
LabelRows.text = dv.Table.Rows.Count
Select Case dv.Table.Rows.Count
Case 0
panelResults.Visible = False
End Select
【讨论】: