从SqlDataSource检索Total Row Count时遇到了一些困难。我使用SqlDataSource中的SELECT语句的结果来创建ListView,但是生成了一些代码,这些代码可以让我轻松获得Total Row Count。我不会展示我使用的所有不同代码,但会向您展示简单的解决方案。
答案 0 :(得分:1)
假设我有一个名为'dsResults'的SqlDataSource,它选择数据库表中的某些记录。下面的代码通过DataView从该SqlDataSource检索总行数,让您在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
答案 1 :(得分:1)
如果您将SqlDataSource
绑定到ListView
,为什么不简单地从ListView
获取计数?
LabelRows.Text = ListView1.Items.Count