我有DataView
申请了Sort
。我无法将Sorted
DataView
状态分配/复制到DataTable
。
使用列'距离'对DataView进行排序:
DataTable table=GetData();
DataView view = table.DefaultView;
view.Sort = "Distance";
这很好。
但是,当我将此DataView
分配给DataTable
时 * 放弃已退出的状态 *。
DataTable dt = (view.Table);
这会丢失DataView
的排序状态
任何的想法?
如果出现问题,请更正我的代码。
因此,我想将已排序的DataView
分配/复制到DataTable
而不会丢失已排序状态。
答案 0 :(得分:4)
使用view.ToTable()
代替view.Table
。请参阅下面的代码段
DataTable table=GetData();
DataView view = table.DefaultView;
view.Sort = "Distance";
DataTable dt = view.ToTable();
答案 1 :(得分:0)
您可以直接在Datatable本身获取数据视图属性。
DataTable table=GetData();
table.DefaultView.Sort="Distance";
table=table.DefaultView.ToTable();
答案 2 :(得分:0)
这是编写单行排序的一种非常有效的方法,可以维护父{{1+1}}
中DataView
的排序。
DataTable