public IHttpActionResult RemoveRoleFromUser(UserAndRoleJsonModel deleteData) { var role = _unitOfWork.Roles.SingleOrDefault(r => r.Name.Equals(deleteData.roleName)); var user = _unitOfWork.Users.SingleOrDefault(u => u.Id.Equals(deleteData.userId)); user.AspNetRoles.Remove(role); _unitOfWork.Complete(); var usersRoles = user.AspNetRoles.Select(r => new RoleDto { Id = r.Id, Name = r.Name }); return(Ok(usersRoles)); }
public IHttpActionResult AddRoleToTheUser(UserAndRoleJsonModel postData) { var user = _unitOfWork.Users.SingleOrDefault(u => u.Id.Equals(postData.userId)); var role = _unitOfWork.Roles.SingleOrDefault(r => r.Name.Equals(postData.roleName)); if (user.AspNetRoles.Contains(role)) { return(BadRequest("User is already in that role!")); } user.AspNetRoles.Add(role); _unitOfWork.Complete(); var usersRoles = user.AspNetRoles.Select(r => new RoleDto { Id = r.Id, Name = r.Name }); return(Ok(usersRoles)); }