Я работаю в MVC Identity и хочу получить роли, которых у пользователя не было, поэтому я создал usersWithRoles
LINQ, содержит роли, добавленные к пользователю, а список Roles
содержит все роли, поэтому я необходимо удалить usersWithRoles
из Roles
, чтобы получить новый список, содержащий роли, которых у пользователя не было,
это мой код:
public JsonResult GetUserRolesToAdd(string Username)
{
var usersWithRoles = (from user in context.Users.Where(u => u.UserName == Username)
select new
{
UserRoles = (from userRole in user.Roles
join role in context.Roles on userRole.RoleId equals role.Id
select new { RoleName = role.Name, RoleId = role.Id }).ToList()
}).ToList();
var RolesToAdd = (from roles in context.Roles
select new
{
RoleId = roles.Name
}).ToList();
foreach (var item in usersWithRoles)
RolesToAdd.Remove(
//what to write inside removeAll function!
);
var jsonResult = Json(usersWithRoles, JsonRequestBehavior.AllowGet);
jsonResult.MaxJsonLength = int.MaxValue;
return jsonResult;
}
любой может мне помочь!