1
ユーザーとグループの間に多対多の関係があり、グループのアクセス許可を含むテーブルがあります。私は(該当するものは、ユーザーが属するすべてのグループのためのものである)ユーザーに適用される権限を見つける方法を疑問に思ってEntity Framework、多対多リレーションシップとクエリ
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を参照してください)該当するアクセス許可。それを行う最善の方法は何ですか?あなたの助けのための
おかげで、 エリック