LINQ中的订单小数

时间:2016-11-03 12:03:24

标签: c# entity-framework linq

我使用实体框架从表中获取数据并按十进制列对数据进行排序 如何在linq中以正确的方式订购数据? 我已经尝试过了

list.OrderBy(x => x.DisplayOrder)

但这会产生错误的结果

12.0
1.0
2.0
2.5
3.0

感谢您的帮助

2 个答案:

答案 0 :(得分:6)

你的DisplayOrder是一个字符串吗?如果是这样,它将按字母顺序排序,而不是数字。解析为decimal

list.OrderBy(x => decimal.Parse(x.DisplayOrder))

答案 1 :(得分:0)

List<decimal> list= new List<decimal>() {12.123m,14m,10.85m,124.0003m};

foreach (var  item  in list.OrderBy(c=>c))
{
    Console.WriteLine(item.ToString(CultureInfo.InvariantCulture));
}