public async Task <ActionResult <DataWithVersion <UserSettingsForClient> > > UserSettingsForClient() { try { int userId = _tenantInfo.UserId(); var user = await _db.LocalUsers.FirstOrDefaultAsync(e => e.Id == userId); // prepare the result var forClient = new UserSettingsForClient { UserId = userId, Name = user.Name, Name2 = user.Name2, ImageId = user.ImageId, }; var result = new DataWithVersion <UserSettingsForClient> { Version = user.UserSettingsVersion.ToString(), Data = forClient }; return(Ok(result)); } catch (Exception ex) { _logger.LogError($"Error: {ex.Message} {ex.StackTrace}"); return(BadRequest(ex.Message)); } }
public async Task <ActionResult <DataWithVersion <UserSettingsForClient> > > UserSettingsForClient() { return(await ControllerUtilities.InvokeActionImpl(async() => { var(version, user, customSettings) = await _appRepo.UserSettings__Load(); // prepare the result var userSettingsForClient = new UserSettingsForClient { UserId = user.Id, Name = user.Name, Name2 = user.Name2, Name3 = user.Name3, ImageId = user.ImageId, PreferredLanguage = user.PreferredLanguage, CustomSettings = customSettings.ToDictionary(e => e.Key, e => e.Value) }; var result = new DataWithVersion <UserSettingsForClient> { Version = version.ToString(), Data = userSettingsForClient }; return Ok(result); }, _logger)); }