public async Task <IActionResult> UserSettingsPost([FromRoute] string userId, [FromForm] UserSettingsUpdate userSettingsUpdate) { string viewingUserId = this.GetViewerUserId(); if (viewingUserId != userId) { return(Unauthorized()); } if (!ModelState.IsValid) { return(View("UserSettings", new UserSettingsViewModel { Id = userId, Bio = userSettingsUpdate.Bio, DateCreated = userSettingsUpdate.DateCreated, Name = userSettingsUpdate.Name })); } await _userService.Update(userId, userSettingsUpdate).CAF(); _logger.LogInformation("User: {UserId} has updated user settings", viewingUserId); return(RedirectToAction("UserView", "User", new { userId })); }
public async Task Update(string id, UserSettingsUpdate settingsViewModel) { var user = await _context.User.FirstOrDefaultAsync(x => x.Id == id).ConfigureAwait(false); using var scope = _serviceScopeFactory.CreateScope(); var mapper = scope.ServiceProvider.GetService <IMapper>(); mapper.Map(settingsViewModel, user); await _context.SaveChangesAsync().ConfigureAwait(false); }
public async Task Update(string id, UserSettingsUpdate settingsViewModel) { var user = await(await _client.User().FindAsync(x => x.Id == id).CAF()).FirstOrDefaultAsync().CAF(); using var scope = _serviceScopeFactory.CreateScope(); var mapper = scope.ServiceProvider.GetService <IMapper>(); mapper.Map(settingsViewModel, user); await _client.User().FindOneAndReplaceAsync(x => x.Id == user.Id, user).CAF(); }