如何获取动态数据表的最后一行是第一行顺序,就像asp.net中的所有行一样

时间:2016-09-28 11:29:55

标签: c# asp.net

我创建了

 DataTable date= new DataTable();
 date.Columns.Add("datenmoth");

并填写列名“Month”,日期为

Month(Column name)
05-oct-2014
06-Nov-2014
02-Dec-2014
02-jan-2015
01-feb-2015
20-mar-2015

并填写我的动态表格

现在,我希望这个动态表数据是反向顺序

我需要结果:基于月份和年份采取相反的顺序

 Month(Column name)
20-mar-2015
01-feb-2015
02-jan-2015
02-Dec-2014
06-Nov-2014
05-oct-2014    

谢谢。

1 个答案:

答案 0 :(得分:1)

请勿使用字符串填充此表,但使用DateTimes。如果您将字符串用作列类型,则始终必须将其转换为DateTime。像这里:

var dateInReversedOrder = date.AsEnumerable()
    .OrderByDescending(r => DateTime.Parse(r.Field<string>("datenmoth")))
    .CopyToDataTable();

有效,但效率低,容易出现本地化问题(将来)。

按降序排序后的样本数据和(所需)结果:

DataTable date = new DataTable();
date.Columns.Add("datenmoth");
date.Rows.Add("05-oct-2014");
date.Rows.Add("20-mar-2015");

enter image description here