public IHttpActionResult Get(int id) { var resultado = _userManager.FindByIdAsync(id); if (resultado == null) { return(NotFound()); } return(Ok(resultado)); }
public async Task <IHttpActionResult> Put([FromBody] UsuarioRolesViewModel viewModel) { var user = await _userManager.FindByIdAsync(viewModel.UserId); var possibleRoles = await _roleManager.Roles.ToListAsync(); var userRoles = await _userManager.GetRolesAsync(user.Id); var submittedRoles = viewModel.SelectedRoles; var shouldUpdateSecurityStamp = false; foreach (var submittedRole in submittedRoles) { var hasRole = await _userManager.IsInRoleAsync(user.Id, submittedRole); if (!hasRole) { shouldUpdateSecurityStamp = true; await _userManager.AddToRoleAsync(user.Id, submittedRole); } } foreach (var removedRole in possibleRoles.Select(r => r.Name).Except(submittedRoles)) { shouldUpdateSecurityStamp = true; await _userManager.RemoveFromRoleAsync(user.Id, removedRole); } if (shouldUpdateSecurityStamp) { await _userManager.UpdateSecurityStampAsync(user.Id); } return(Ok(true)); }