Exemplo n.º 1
0
        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());
        }
Exemplo n.º 2
0
        /// <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));
        }