Linq集团由多个条件和订单组成

时间:2012-01-16 18:45:51

标签: vb.net linq group-by sql-order-by

我有以下内容:

myFilteredContractors = (From c In myFilteredContractors
    Join cc In myConClasses On c.ContractorId Equals cc.ContractorId
    Where inClassifications.Contains(cc.ClassificationId)
    Group c By Key = cc.ContractorId Into Group, Count = Count()
    Order By Count Descending
    Select (From c1 In myContractors Where c1.ContractorId = Key).FirstOrDefault).ToList

这是按照他们所拥有的分类数量正确订购此承包商列表。

我还想根据它们是否有字段集(CompanyOverview)对它们进行排序,如果是空字符串,则应该低于那些设置了CompanyOverview的承包商。此外,在订购CompanyOverview后,我想按注册日期订购。

所以它应该按顺序排序:

  1. 分类数
  2. 是否已设置概述(c.CompanyOverview
  3. 注册日期(c.AppliedDate
  4. 在LINQ中可以实现所有这些吗?

1 个答案:

答案 0 :(得分:0)

是的,只需按顺序添加一个order by子句:按X排序,按Y排序,......

如果你喜欢lambda检查OrderBy()ThenBy()函数。