加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

LInq Order By和Order By Desc

发布时间:2020-12-12 08:25:21 所属栏目:MsSql教程 来源:网络整理
导读:我使用“ Linq”来过滤对象列表并对它们进行排序,比如 myList.Where(x = x.Item!= "SF" x.AdSize == minadSize) .OrderBy(x = x.ManufacturingDate) .OrderBy(x=x.ExpiryDate); 我怀疑我是否做得对,如果我想在多个字段上“排序”那么是否有必要使用多个Order
我使用“ Linq”来过滤对象列表并对它们进行排序,比如
myList.Where(x => x.Item!= "SF" && x.AdSize == minadSize)
      .OrderBy(x => x.ManufacturingDate)
      .OrderBy(x=>x.ExpiryDate);

我怀疑我是否做得对,如果我想在多个字段上“排序”那么是否有必要使用多个Order By子句,不能用单个“OrderBy”来完成

解决方法

不要使用多个OrderBy调用 – 使用OrderBy后跟ThenBy:
var query = myList.Where(x => x.Item!= "SF" && x.AdSize == minadSize)
                  .OrderBy(x => x.ManufacturingDate)
                  .ThenBy(x => x.ExpiryDate); // Could add more ThenBy calls

如果您使用OrderBy两次,它将按到期日期对已按日期排序的列表重新排序,而我假设您只想按生产日期相同的项目按到期日期订购,这就是上述操作.

显然还有一个ThenByDescending方法.例如:

var query = people.OrderBy(x => x.LastName)
                  .ThenBy(x => x.FirstName)
                  .ThenByDescending(x => x.Age)
                  .ThenBy(x => x.SocialSecurity);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读