public async Task <object> Put(UpdateUserRole request) { var response = new BaseResponse(); Expression <Func <User, bool> > keySelector = x => x.Id == request.Id; var entity = await _userService.GetById(keySelector : keySelector); // check isValid Role if (!base.IsUserValidRole(request.RoleId)) { throw new MethodAccessException(); } request.ToEntity(entity); var result = await _userService.Update(entity); response.Success = true; response.Message = "Update user success"; response.StatusCode = (int)HttpStatusCode.OK; response.Results = result.ConvertTo <UserDto>(); return(response); }