首页 > 解决方案 > 有没有办法在 C# Entity Framework 中使用 lambda 表达式优化一对多连接,其中许多是数组其他表记录?

问题描述

目前对于每个角色,我必须在用户表中搜索用户记录。如果有人有更好的查询方法,请告诉我。

Query:-
    userEntities.TBL_Roles.Where(record => record.IsActive == true)
                                        .Select(role=>new { 
                                                ID = role.ID,
                                                Role_Name= role.Role_Name,
                                                Users = userEntities.TBL_User.Where(user=> user.IsActive==true && user.Role_ID==role.ID).ToList(),
        
                                            }
                                        );
        
            Result should be like
            [
             {
               ID=1,
               Role_Name="Admin",
               Users=[
                  {
                      Name="John Doe",
                      Role_ID=1,
                      IsActive=true
                  },
                  {
                      Name="Mary Alice",
                      Role_ID=1,
                      IsActive=true
                  }
               ]
             }
            ]

标签: c#entity-framework

解决方案


推荐阅读