EF 复杂语句的使用
//EF多重排序 context.Serials .Where(s => ("," + s.VideoGenreIds + ",").Contains("," + genreIds + ",") && s.IsEnable && !s.IsDel) .OrderByDescending(v => v.Weight) .ThenByDescending(v => v.Hot) .Skip((currentPage - 1) * pageSize) .Take(pageSize) .Select(v => new SerialBriefModel { Id = v.Id, SerialName = v.SerialName, LastEpisode = v.LastEpisode, Description = v.Description, PicturePath = v.PicturePath, AddTime = v.AddTime }).ToList(); //EF group的使用以及 两表连接 var model = context.Serials .Where(s => s.Id == serialId && s.IsEnable && !s.IsDel) .GroupJoin(context.SerialEpisodes.Where(e=>!e.IsDel), s => s.Id, e => e.SerialId, (s, e) => new SerialDetailModel { Id = s.Id, SerialName = s.SerialName, VideoAreaId = s.VideoAreaId, VideoAreaName = s.VideoArea.AreaName, VideoGenreIds = s.VideoGenreIds, VideoLanguageId = s.VideoLanguageId, VideoLanguageName = s.VideoLanguage.Language, TotalEpisodes = s.TotalEpisodes, LastEpisode = s.LastEpisode, Director = s.Director, Starring = s.Starring, ReleaseYear = s.ReleaseYear, PicturePath = s.PicturePath, Description = s.Description, Fee = s.VideoChargeMethod.Fee, Hot = s.Hot, Score = s.Score, SerialEpisodes = e.OrderBy(se => se.SerialIndex).Select(se => new SerialEpisodeModel { Id = se.Id, SerialIndex = se.SerialIndex, TagName = se.SerialTag.TagName, Title = se.Title, Description = se.Description } ).ToList() }).FirstOrDefault();
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix