linq - 根据特定顺序在 LINQ 中排序
问题描述
我有以下记录:
ID Type TypeID
1 BHD 2
2 BHD 2
3 AUY 4
4 CDL 5
5 BUL 6
6 ZUL 7
我喜欢做的是对其进行排序,以便按照 AUY、BHD 和 CDL 按字母顺序排序并在末尾附加 BUL 和 ZUL 对其进行排序。
AUY
BHD
CDL
BUL
ZUL
如何在 Linq 中做到这一点。请注意,我有排序依据的 TypeID。
我有一个这样的foreach:
foreach(ent.OrderBy(s => s.TypeID 中的 var 类型)
解决方案
您始终可以分多个步骤进行排序:
foreach(var types in ent
.OrderBy(s => s.Type == "BUL" || s.Type == "ZUL" ? 1 : 0)
.ThenBy(s => s.Type))
{
// Do your thing here...
}
推荐阅读
- mysql - 如何获取与存储在另一个表中的用户名关联的 id
- android - 在 Android 上请求和多步响应 ussd
- crystal-lang - Crystal lang:如何将二进制 Int 写入 IO
- sql-server-2008-r2 - SQL Server左连接未从左表返回预期记录
- c# - 在 BULK INSERT 时触发更新触发器后
- java - PrimeFaces dataTable 在使用标签更新的异步部分提交请求后未更新?
- sapui5 - 如何使列表项可重新排序?
- xml - Odoo 11. 从 xml 导入 many2one
- sql - 如何将 varchar 转换为 hh:mm:ss 的日期时间格式?
- c# - #c Wpf 数据绑定