LINQ to Entites/IQueryable:对多个字段进行排序
我想对以下内容进行排序:
IQueryable<Map> list;
list = from item in ctx.MAP
.Include("C")
.Include("L")
.Include("L.DP")
select item;
return list.OrderBy(m=>(m.L.DP.Name + m.L.Code));
这可行,但它按字母顺序排序 - 因此 12 在 9 之前。(假设 Code 是数字字段)
对此进行排序以便 Code 按数字排序的最佳方法是什么?
I have the following that I'd like to sort:
IQueryable<Map> list;
list = from item in ctx.MAP
.Include("C")
.Include("L")
.Include("L.DP")
select item;
return list.OrderBy(m=>(m.L.DP.Name + m.L.Code));
This works, but it sorts alphabetically - so 12 comes before 9. (Assume Code is a numeric field)
What is the best way to sort this so Code is sorted numerically?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可能希望使用 ThenBy 扩展方法来按多个字段排序;)
在你的情况下,那就是
You probably want to use the ThenBy extension method to be able to sort by multiple fields ;)
In your case that would be