我正在尝试根据需要对DataSet
进行排序:
protected void GridView1_Sorting1(object sender, GridViewSortEventArgs e)
{
DataSet data = (DataSet)GridView1.DataSource;
//sort data by e.SortExpressions
//data.Sort that doesn't work
//data.Tables[0].Sort that doesn't work
DataView view = data.Tables[0].DefaultView;
view.Sort = e.SortExpression;
GridView1.DataBind();
}
不要尝试对DataSet
进行排序 - 这是不可能的。相反,只是试图实现真相......
...您在DataView
内对DataTable
而不是DataSet
进行排序:
protected void GridView1_Sorting1(object sender, GridViewSortEventArgs e)
{
DataSet dataSet = (DataSet)GridView1.DataSource;
DataTable dataTable = (DataTable)dataSet.Tables[0];
DataView dataView = dataTable.DefaultView;
dataView.Sort = "TransactionNumber";
GridView1.DataBind();
}
除了网格没有按照数据*中的TransactionNumber
列排序。
在排序“生效”之前是否需要调用某些view.RunSort()
方法?