假设我有一个像下面那样的linq查询
var LinqResult =
from a in Db.Table
select new {Table = a};
从这里开始,如何从这些结果中获取特定行并将其放在最前面?
答案 0 :(得分:0)
添加
orderby a.Id == someId // or some other condition
答案 1 :(得分:0)
如果你已经根据id来知道你想要在哪一行,你可以尝试根据行ID进行排序。
var LinqResult =
from a in Db.Table
orderby a.Id == checkId descending
select new {Table = a};
答案 2 :(得分:0)
orderby (a.Id == someId ? 1 : 2)
通过对数字1或2进行排序,使得排序相当明确,取决于它是否是所需的最高值。
你可以通过对bool表达式本身进行排序来简化这一点,除了false < true
,所以为了得到someId,你必须写:
orderby a.Id != someId
或
orderby a.Id == someId descending
答案 3 :(得分:0)
你可以尝试
var LinqResult =
(from a in Db.Table
select new {a.column}).Orderby();