0

Pages テーブルがあり、PageId、ASP.Net Membership Roles テーブルと Pages テーブルにリンクする RoleID を持つ PagesRoles テーブルがあります。

現在ログインしているユーザーの役割にリンクするページを何とか返したいと思っています。

ユーザーは、複数のロールに存在する場合があります。ページは、それに対して複数のロールを持つことができます。

IQueryable の外部キー プロパティを持つ Page クラスがあります。PageRoles には、IQueryable to ASPNet Roles テーブル (IQueryable) と IQueryable があります。

ありがとう

編集:

Adam の回答を使用して、現在ログインしているユーザーのロールの 1 つと一致するロールが割り当てられているすべてのページを取得すると、問題が追加されます。PageID 外部キーと CategoryID を持つ Menu テーブルがあります。

CategoryID が 4 のすべてのメニュー項目を返したいと思います。Pag​​eID を持つ項目については、ユーザーがロールに基づいてそのページを表示できるようにする必要があります。アダムのクエリはそれを行うと思います。したがって、必要なのはUNIONであり、PageIDがnullでCategoryIDが4のすべてのメニュー項目を返し、CategoryIDが4のすべてのメニュー項目を返し、現在のユーザーの役割がそのASPNetRoleにあるPage-> PageRole-> ASPNetRoleに参加します結果。

4

1 に答える 1