实体框架多对多单个对象

时间:2014-12-09 13:27:15

标签: c# sql entity-framework

我正在尝试在数据库中映射具有多对多关系的用户的属性,但每个用户只有一个。但是我无法在entityframework中找出所需的地图。我有以下实体:

public class User
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }

    //Need to map this property
    public virtual SecurityRole SecurityRole { get; set; }
}

public class SecurityRole
{
    public int Id { get; set; }
    public string Name { get; set; }
}

以下表格:

User:
    Id
    FirstName
    LastName
SecurityRole:
    Id
    Name
UserSecurityRole:
    UserId
    SecurityRoleId

如果有人有任何想法或者可以指出我的方向很好

1 个答案:

答案 0 :(得分:1)

即使数据库中只有一条记录,如果UserSecurityRole之间存在多对多的关系,它应该像这样工作:

public class User
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }

    public List<SecurityRole> SecurityRoles { get; set; }
}

public class SecurityRole
{
    public int Id { get; set; }
    public string Name { get; set; }

    public List<User> Users { get; set; }
}