public async Task <int> Update(UpdateSettingServiceModel serviceModel) { var exitsEntity = await _context.SettingEntity.Include(o => o.SettingValues).SingleAsync(o => (serviceModel.Id != default) ? o.Id == serviceModel.Id : o.Name == serviceModel.Name); _context.Entry(exitsEntity).CurrentValues.SetValues(new SettingEntity { Id = exitsEntity.Id, Name = exitsEntity.Name, LastUpdateByUser = serviceModel.UpdateBy, LastUpdateDate = DateTime.Now }); var currentLanguage = Thread.CurrentThread.CurrentCulture.Name; var filteredValues = exitsEntity.SettingValues.Where(o => o.ForCurrentRequestLanguage()); var excludeProperties = new List <String> { nameof(SettingValue.Language), nameof(SettingValue.SettingEntityId) }; _context.TryUpdateList(filteredValues, serviceModel.SettingValues, o => o.Id, excludeProperties); var resultCount = await _context.SaveChangesAsync(); return(resultCount); }
public async Task <bool> UpdateSetting(UpdateWebsiteSettingServiceModel serviceModel) { var updateServiceModel = new UpdateSettingServiceModel { Name = WebsiteSettingSeed.HomeSetting.Name, SettingValues = serviceModel.SettingValues, UpdateBy = serviceModel.UpdateBy }; var resultCount = await _setting.Update(updateServiceModel); return(resultCount > 0); }