我有根据所选日期显示信息的日历。 它是这样的:
string queryString = "SELECT * from events";
SqlCommand thisCommand = thisConnection.CreateCommand();
thisCommand.CommandText = queryString;
SqlDataReader reader = thisCommand.ExecuteReader();
if(true)
queryString = "SELECT Text from events where repeat = 1";
else
queryString = "SELECT Text from events where repeat = 0";
GridView1.DataSource = reader ;
GridView1.Bind();
我得到的错误是"数据源不支持服务器端数据分页"
答案 0 :(得分:0)
您应该使用SqlDataAdapter来填充DataTable,然后使用datatable作为gridview的数据源。 SqlReader是用于快速访问sql数据的类,它不适合作为数据源。
var adapter = new SqlDataAdapter(thisCommand);
var table = new DataTable();
adapter.Fill(table);
GridView1.DataSource = table;
GridView1.Bind();
您将在Web服务器上进行所有排序/分页 - 此操作最好直接在SQL Server上处理。所以我建议使用ObjectDataSource或LinqDataSource并适当调整查询以处理SQL服务器级的分页/排序。