我正在使用“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
两次,就会reorder按到期日期已按日期订购的列表,而我假设您只想按到期日期订购带有equal生产日期,这就是上面的作用。
显然有一个ThenByDescending
方法也。例如:
var query = people.OrderBy(x => x.LastName)
.ThenBy(x => x.FirstName)
.ThenByDescending(x => x.Age)
.ThenBy(x => x.SocialSecurity);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)