如果它包含多对多映射,如何查询数据库?

时间:2014-06-07 13:33:01

标签: c# entity-framework

我正在使用Entity Framework 6,我的项目包含我的Entites的Fluent Api映射。我使用Entity Framework生成器来生成类和映射。

我在数据库中有三个表

-User
-Roles
-UserRoles

UserRolesUserIdRolesId组成。

实体框架生成器不生成UserRole映射和Entity类。它将映射放在Role类

我想基于name获得该角色的UserId。我该如何查询。

提前致谢。

1 个答案:

答案 0 :(得分:0)

var userID = "bad5ea54-f32b-4450-ae50-883acdfda41d";
var query = from user in context.AspNetUsers 
        where user.Id == userID
        from userRole in AspNetUserRoles where userRole.User == user
        from role in AspNetRoles where role == userRole.Role
        select role.Name;