0

所以我对我正在从事的项目有疑问。由于我们的查询中有大量数据,我正在创建一个网格视图,它将由 SQL Server 处理分页和排序。我已经下载了一个如何执行此操作的示例,更改了示例 SQL 以适合我的表,并且它测试得很好。一旦我将此代码传输到我的主项目,数据集就不会被任何数据填充。事实上,我知道代码有效,我知道 SQL 返回 48 行,并且应该以每页 25 行进行分页。我什至尝试在返回 ArrayList 的函数中运行 SQL,然后将其转换为数据表并填充 DataSet,正在填充数据表,但 DataSet 上的数据计数返回为 0.... 我在完全的损失。我完全没有错误,它正在与我的数据库进行通信。

这是我填充数据集的代码;

public DataSet GetDataSet(string sql) {
    DataSet ds = new DataSet();

    using (SqlConnection conn = new SqlConnection(_connectionString))
    {
        SqlDataAdapter adapter = new SqlDataAdapter();
        adapter.SelectCommand = new SqlCommand(sql, conn);
        conn.Open();
        adapter.Fill(ds);
    } 

    return ds;
}

我也试过这段代码;

   SqlConnection src = new SqlConnection(_connectionString);

        try
        {
            src.Open();
            using (SqlDataAdapter DA = new SqlDataAdapter(sql, src))
            {

                DataTable report = new DataTable();
                DA.Fill(report);
                DS = new DataSet();
                DS.Tables.Add(report);

            }


            src.Close();
        }
4

1 回答 1

0

在第一个代码中,首先像这样用表格填充 ds

con.open();
adapter.Fill(ds,"THE TABLE NAME EXACTLY IN  YOUR DB");
GridView1.DataSource= ds.Tables["THE TABLE NAME EXACTLY IN  YOUR DB"];
GridView1.DataBind();
于 2013-04-16T02:35:24.613 回答