public void UpdateSettings(DTO.Settings updatedSettings) { CheckHelper.ArgumentNotNull(updatedSettings, "updatedSettings"); CheckHelper.ArgumentWithinCondition(!updatedSettings.IsNew(), "!updatedSettings.IsNew()"); Container.Get <IValidateService>().CheckIsValid(updatedSettings); CheckHelper.WithinCondition(SecurityService.IsLoggedIn, "User is not logged in."); CheckHelper.WithinCondition(SecurityService.IsCurrentUserAdministrator, "Only administrator can update settings."); var persistentService = Container.Get <IPersistentService>(); var settings = Container .Get <IPersistentService>() .GetEntitySet <DataAccess.Settings>() .SingleOrDefault(); CheckHelper.ArgumentNotNull(settings, "Cannot find settings."); CheckHelper.WithinCondition(settings.Id == updatedSettings.Id, "settings.Id == updatedSettings.Id"); settings.RublesPerDollar = updatedSettings.RublesPerDollar; settings.UpdateTrackFields(Container); persistentService.SaveChanges(); _settings = null; }