Linq连表查询
前言
本人小白程序员一枚 会点java也会点.net
最近在公司做项目当中用到了linq连表查询 因为好久没用linq了 有些语法我也忘记了
既然不会那就一个字学!
正文
在数据库中 表关系有一对一关系 一对多关系,多对多关系
我的需求是 我需要根据用户的id查询用户收藏的内容
表设计
收藏表
还一个内容表就不展示了 我需要根据用户id查询用户收藏的内容 根据内容id查询收藏的内容
代码实现
/// <summary>
/// 根据用户id查询收藏的资源信息
/// </summary>
/// <param name="userid"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public async Task<List<Resource>> GetCollectionResources(Guid userid, int skipCount, int maxResultCount)
{
var result = from resources in (await GetDbContextAsync()).Resources
join cr in (await GetDbContextAsync()).Collections
on resources.Id equals cr.ResourcesId
where cr.Type == CollectiosTypes.Resource && cr.CreatorId == userid
select resources;
var list = await result.ToListAsync();
var tolist = await result
.OrderByDescending(m => m.CreationTime)
.Skip(skipCount)
.Take(maxResultCount)
.ToListAsync();
return tolist;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律