如何对DataTable列值进行排序?

时间:2014-05-03 08:15:55

标签: c#-4.0 datatable

在我的c#DataTable数据中是这样的。


Col1中


1234年 - 西瓦

3445 - 拉姆

78454 - Anand

343 - Raj

454 - Balu

我需要像这样放


Col1中


78454 - Anand

454 - Balu

3445 - 拉姆

343 - Raj

1234年 - 西瓦

如何在' - '之后根据文字对结果进行排序c#

中DataTable列中的字符

1 个答案:

答案 0 :(得分:1)

您可以尝试使用LINQ

var dt = new System.Data.DataTable();
dt.Columns.Add("UserName");

dt.Rows.Add("1234 - Siva");
dt.Rows.Add("3445 - Ram");
dt.Rows.Add("78454 - Anand");
dt.Rows.Add("343 - Raj");
dt.Rows.Add("454 - Balu");

// dtNew will be new DataTable with sorted lines
var dtNew = dt.AsEnumerable().OrderBy(x => ((string)x["UserName"]).Substring(((string)x["UserName"]).IndexOf("-") + 1).Trim()).CopyToDataTable();

我猜你需要2个命名空间

using System.Linq;
using System.Data; 
相关问题