c# - Linq orderby bool 值

标签 c# linq sql-order-by

我有一个返回有序列表的 Linq 查询。它有效,但在对 bool 值进行排序时,它总是将错误项放在第一位。

return from workers in db.Workers
               orderby workers.active, workers.naam 
               select workers;

有没有办法先订购真实的元素?

最佳答案

OrderBy方法将默认按升序对项目进行排序。现在,假设 bool 值的数字表示是:

  • = 0
  • true = 1

false 值自然会排在第一位。如果您想反转顺序,只需使用 descending 关键字:

return from workers in db.Workers
               orderby workers.active descending, workers.naam 
               select workers;

关于c# - Linq orderby bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9481054/

相关文章:

c# - LINQ 到存储过程。我可以使用动态参数列表来调用 SP,而不是强类型化它们吗?

c# - 创建动态 Linq 到 EF 表达式以选择 IQueryable 到新类中并分配属性

c# - MVC 6 VNext 如何从不同的区域设置相同的布局

c# - Java 在哪些方面比 C# 更优雅?

c# - 将字符串分隔到不在集合字典中的列表中

mysql - SQL查询匹配别名和排序依据并优化查询

android - 对于 android 应用程序,如何按降序排列我的 SQLITE 数据库?

Angular:使用搜索输入和特定过滤器选项过滤表格内容

c# - 在 UI 线程上同步取消挂起的任务

c# - 无法进入.NET源代码