一:
在C#中要对Datatable排序,可使用DefaultView的Sort方法。先获取Datatable的DefaultView,然后设置得到的Dataview的sort属性,最后用视图的ToTable方法将排好序的dataview导出为Datatable。
代码如下: DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Rows.Add(new object[] { 12, "lwolf" }); dt.Rows.Add(new object[] { 100,"kkkkk"}); dt.Rows.Add(new object[] { 19,"jim" }); dt.Rows.Add(new object[] { 1,"test" }); DataTable dtCopy = dt.Copy(); DataView dv = dt.DefaultView; dv.Sort = "ID"; dtCopy = dv.ToTable();这样子最后得到的就是排好序的Datable了。
二:
DataTable dt = new DataTable();
dt.Columns.Add("ProductID", typeof(string));
dt.Columns.Add("CreateTimeStamp", typeof(string));
dr = dt.NewRow();
.....
dt.Rows.Add(dr);
dt.DefaultView.Sort = "CreateTimeStamp DESC";
CreateTimeStamp 是列名,ASC/DESC 升序/降序排列。
三:
DataTable dt = new DataTable();
dt.Columns.Add("Name"); dt.Columns.Add("Age");//因为是字符串,所以排序不对 dt.Rows.Add("小明", "21"); dt.Rows.Add("小张", "10"); dt.Rows.Add("小红", "9"); dt.Rows.Add("小伟", "7"); dt.Rows.Add("小美", "3"); dt.DefaultView.Sort = "Age ASC"; dt = dt.DefaultView.ToTable();