【问题标题】:How to order a linq query result by two different types fields [duplicate]如何通过两种不同类型的字段对 linq 查询结果进行排序 [重复]
【发布时间】:2012-08-03 14:33:28
【问题描述】:
可能重复:
Multiple “order by” in LINQ
我想知道如何通过两种不同类型的查询来排序,如下所示:
var qry = (from m in dc.Orders
select new { m.OrderDate, m.OrderID }).OrderBy(o=>o.OrderDate+o.OrderID).ToList();
bindingSource1.DataSource = qry;
OrdrerDate 是日期类型,OrderID 是 int 类型。
【问题讨论】:
标签:
c#
winforms
linq-to-sql
sql-order-by
bindingsource
【解决方案1】:
你正在寻找.ThenBy():
.OrderBy(o => o.OrderDate).ThenBy(o => o.OrderID).
【解决方案2】:
我会说:
var qry = (from m in dc.Orders
select new { m.OrderDate, m.OrderID }).OrderBy(o=>o.OrderDate).ThenBy(o.OrderID).ToList();
【解决方案3】:
试试这个
var qry = (from m in dc.Orders
select new { m.OrderDate, m.OrderID }).OrderBy(o=>o.OrderDate).ThenBy(o.OrderID).ToList();
【解决方案4】:
你可以使用 ThenBy 或者你可以编写这个 Linq 查询:
var qry = (from m in dc.Orders
orderby m.OrderDate, m.OrderID
select new {m.OrderDate, m.OrderID}).ToList
bindingSource1.DataSource = qry;