Esempio n. 1
0
        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);
        }