1
我有一個多對多的用戶和組之間的關係,我有一個表可以包含一個組的權限。因此,實體看起來像:實體框架,多對多關係和查詢
public class Group
{
public int Id { get; set; }
public virtual ICollection Users { get; set; }
}
public class User
{
public int Id { get; set; }
public virtual ICollection Groups { get; set; }
}
public class Permission
{
public int Id { get; set; }
public virtual Group { get; set; }
public int Value { get; set; }
}
我想知道我是如何找出適用於用戶(如適用者是任何組用戶所屬)的權限。
在數據庫中會有一個名爲UserGroups的映射表。如果我有訪問到,LINQ查詢看起來是這樣的:
var permissions =
from p in MyContext.Permissions
join m in this.DbContext.UserGroups on p.GroupId equals m.GroupId
where m.UserId.Equals(theUserId)
select g;
但是(見my related question),因爲我沒有訪問映射表,我不知道要找到最好的方式適用的權限。什麼是最好的方式來做到這一點?
感謝您的幫助, 埃裏克