Linq 查询多张表,关系表

来源:互联网 发布:ucjiz软件免费下载 编辑:程序博客网 时间:2024/06/15 06:25
项目中遇到一个问题, 有4张表, 然后相互之间有3张关系表关联, 一共七张表。

想要从顶层表查询最底层表的记录,不能写7层嵌套。 用Linq实现特别简单, 

表:User,Role,Module,Function以及User_Role,Role_Module, Module_Function,


 var fs = (from r in DB.user_role                          from m in DB.role_module                          from f in DB.module_function                          where r.User_Refid.Equals(user.Refid) && m.Role_Refid.Equals(r.Role_Refid) && f.Module_Refid.Equals(m.Module_Refid)                          select f.function.Name)                         .Distinct();