У меня есть таблица Pages, у меня есть таблица PagesRoles с PageId, RoleID, который связан с таблицей ролей членства ASP.Net и таблицей Pages.
Я хочу как-то вернуть страницу, которая ссылается на пользователя, который в данный момент вошел в систему.
Пользователь может играть более чем одну роль. Страница может иметь более одной роли против нее.
У меня есть класс Page, который имеет свойство внешнего ключа IQueryable. PageRoles имеет таблицу IQueryable to ASPNet Roles (IQueryable) и IQueryable
Спасибо
EDIT:
Используя ответ Адама, чтобы получить все страницы, которым назначена роль, которая соответствует одной из ролей пользователя, вошедшего в данный момент в систему, у меня возникла дополнительная проблема. У меня есть таблица меню, которая имеет внешний ключ PageID и CategoryID.
Я хотел бы вернуть все элементы меню с CategoryID, равным 4. Для тех, у кого есть PageID, мне нужно убедиться, что пользователю разрешено просматривать эту страницу в зависимости от его роли. Я думаю, что запрос Адама сделает это. Поэтому я думаю, что мне нужен UNION, вернуть все элементы меню, где PageID равен нулю, а CategoryID равен 4, и вернуть все элементы меню, где CategoryID равен 4, и присоединиться к Page-> PageRole-> ASPNetRole, где роли текущего пользователя находятся в этом ASPNetRole результаты.