问题排序DataTable c#

时间:2014-09-01 21:56:00

标签: c# asp.net sorting datatable

假设我在DataTable

的列中有以下值
120,00
200,00
201,00
12510,00

ASC ORDER中对它们进行排序时,我总是将12510,00放在最前面并保持完美状态。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

我认为它是一个字符串列,你应该用正确的类型填充它。如果不可能,您可以使用decimal.Parse,例如:

tbl = tbl.AsEnumerable()
    .OrderBy(row => decimal.Parse(row.Field<string>("ColumnName")))
    .CopyToDataTable();

您需要添加using System.Linq

如果使用其他小数分隔符,则可以使用decimal.Parse(row.Field<string>("ColumnName"), new CultureInfo("de-DE"))