我對使用實體框架很陌生,而且我很難弄清楚如何編寫使用多對多關係的查詢。我有3個實體。 角色,用戶和安全。 A 角色可以有多個安全和一個安全可以分配給很多角色。 A 角色可以有多個用戶和用戶可以有多個角色。如何編寫一個涉及多對多關係的EF查詢
我的問題是:我該如何着手編寫一個查詢,該查詢爲給定的用戶ID提供了一個清晰的安全列表?
這是我的模型,其中EF自動爲我創建鏈接表。
public class SecurityContext : DbContext
{
public DbSet<User> Users { get; set; }
public DbSet<Role> Roles { get; set; }
public DbSet<Securable> Securables { get; set; }
}
public class User
{
public Guid UserId { get; set; }
public string Forename { get; set; }
public string Surname { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public virtual ICollection<Role> Roles { get; set; }
}
public class Securable
{
public Guid SecurableId { get; set; }
public string Name { get; set; }
public virtual ICollection<Role> Roles { get;set;}
}
public class Role
{
public Guid RoleId { get; set; }
public string Name { get; set; }
public virtual ICollection<Securable> Securables { get; set; }
public virtual ICollection<User> Users { get; set; }
}
這看起來像個勝利者,明天我會試一試 –