0

我在从 SqlDataSource 检索总行数时遇到了一些困难。我使用 SqlDataSource 中的 SELECT 语句的结果来创建一个 ListView,但无法生成一些可以让我轻松获得总行数的代码。我不会展示我使用的所有不同代码,而是向您展示简单的解决方案。

4

2 回答 2

1

假设我有一个名为“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
于 2013-03-22T22:08:50.330 回答
1

如果您将 your 绑定SqlDataSource到 a ListView,为什么不简单地从 your 获取计数ListView

LabelRows.Text = ListView1.Items.Count
于 2013-03-22T22:18:01.020 回答