public async Task <IHttpActionResult> RemoveUserFromRole([FromBody] AddUserToRoleBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var role = await _roleManager.FindByNameAsync(model.RoleName); if (role == null) { return(NotFound()); } var user = await _userManager.FindByNameAsync(model.Username); if (user == null) { return(NotFound()); } var result = await _userManager.RemoveFromRoleAsync(user.Id, role.Name); if (!result.Succeeded) { return(GetErrorResult(result)); } return(Ok()); }
/// <summary> /// Elimina un usuario de un rol y devuelve la lista de roles a los que pertenece. /// </summary> /// <param name="user">Usuario con el que operar</param> /// <param name="roleId">ID del rol que debe ser desasignado</param> /// <returns></returns> public async Task <IEnumerable <MyRole> > RemoveFromRoleAsync(MyUser user, Guid roleId) { var role = GetRol(roleId); if (role != null) { try { var result = await uM.RemoveFromRoleAsync(user, role.Name); } catch (Exception e) { throw e; } } return(GetRolListByUser(user.Id)); }