【发布时间】:2017-01-11 13:25:30
【问题描述】:
这是我的查询
var results = tcs.Skip(searchModel.PageSize * (searchModel.Page - 1))
.Take(searchModel.PageSize)
.AsEnumerable()
.Select(x => new
{
trackId = x.TrackId,
trackName = x.TrackName,
category = _weCategoryService.FindAll().Where(y => y.WorkExperience_Track.TrackId == x.TrackId)
.Select(y => new {
categoryId = y.CategoryId,
categoryName = y.CategoryName,
skill = _skillsService.FindAll().Where(z => z.CategoryId == y.CategoryId)
.Select(z => new {
skillId = z.SkillId,
skillName = z.SkillName
}).OrderBy(z => z.skillName).ToList()
}).OrderBy(y => y.categoryName).ToList()
}).OrderBy(x => x.trackName).ToList();
然后我有一个模型,它的布尔值为 SortTrack、SortCategory 和 SortSkills。
如果布尔值为 true,我想 OrderBy Ascending,如果为 false,我想 Descending。
如何实现?
【问题讨论】:
-
不要内联。很难阅读。
-
@TânNguyễn 我不知道如何内联 linq 查询,我也是这样做的,所以我更容易阅读它:D