C# 将Linq结果中的特定行置于顶部?
假设我有一个像下面这样的linq查询C# 将Linq结果中的特定行置于顶部?,c#,winforms,linq,C#,Winforms,Linq,假设我有一个像下面这样的linq查询 var LinqResult = from a in Db.Table select new {Table = a}; 从这里,如何从这些结果中获取特定行并将其置于顶部?添加 orderby a.Id == someId // or some other condition 如果您已经知道您想要在顶部的哪一行,比如说一个id,您可以尝试根据该行id进行排序 var LinqResult = from a in Db.Table
var LinqResult =
from a in Db.Table
select new {Table = a};
从这里,如何从这些结果中获取特定行并将其置于顶部?添加
orderby a.Id == someId // or some other condition
如果您已经知道您想要在顶部的哪一行,比如说一个id,您可以尝试根据该行id进行排序
var LinqResult =
from a in Db.Table
orderby a.Id == checkId descending
select new {Table = a};
这使得排序相当明确,根据数字1或2排序,这取决于它是否是所需的最大值
您可以通过对bool表达式本身进行排序来简化这一点,除了false orderby a.Id != someId
或
你可以试试
var LinqResult =
(from a in Db.Table
select new {a.column}).Orderby();
orderby a.Id == someId descending
var LinqResult =
(from a in Db.Table
select new {a.column}).Orderby();