ОБНОВЛЕНИЕ: по сути, я хочу получить список всех разрешений и список всех разрешений для данной роли. Затем я хочу пометить каждое разрешение в списке элементов SelectListItems как выбранных, когда они уже принадлежат роли 1001 *
У меня есть три таблицы:
Проект 1- * Роль - Разрешение
Я пытаюсь создать и IEnumerable, используя проекцию, у которой есть все разрешения в списке, но когда я проецирую на SelectItemList, он идентифицирует разрешения, которые уже связаны с определенной ролью:
public IEnumerable GetAllPermissionsPLusRole(int projectid, int roleid)
{
using (var db = new Entities())
{
var permissions = (from p in db.Permissions
select p).ToList();
var permissionsForRole = from r in db.Roles
where r.RoleId == roleid && r.PrjectProjectId == contractid
select r.Permissions.ToList();
IEnumerable<SelectListItem> selectList = from p in permissions select new SelectListItem { Text = p.PermissionName, Value = p.PermissionId.ToString()};
return selectList;
}
}
То, что я хочу сделать, это иметь условно выбранный в проекции, поэтому при отображении списка я могу показать разрешения, уже связанные с ролью.
Заранее спасибо.