此代码正确提取数据并显示;但是,排序完全被忽略了。
DataTable dt = f.Execute().Tables[0];
dt.DefaultView.Sort = summaryColumn;
rptInner.DataSource = dt.DefaultView;
rptInner.DataBind();
我有什么办法可以强迫视图自行排序吗?
(f.Execute()返回位于0位的表的数据集,summaryColumn是表中列的名称,rptInner是转发器控件)
修改
summaryColumn是一个字符串变量,它具有我要排序的列的确切名称。我没有使用sproc或任何东西,DataSet是给我的,我负责对它进行排序。
答案 0 :(得分:4)
如果summaryColumn是数据视图中要排序的coulmn的名称,请将其放入双引号中:
DataTable dt = f.Execute().Tables[0];
DataView dv = dt.DefaultView;
dv.Sort = "summaryColumn";
rptInner.DataSource = dv;
rptInner.DataBind();
如果它是一个包含列名称的字符串变量,请确保它的值是要排序的列的确切字符串名称...
答案 1 :(得分:0)
我在服务器端排序,如果你在执行调用中使用存储过程,则在结果集上放置一个Order By语句(如果它是SQL)。