public GeneralSystemSettingModel GetGeneralSystemSettingModel() { var generalSystemSettingModel = new GeneralSystemSettingModel(); var pr = new PropertyReflector(); var dict = generalSystemSettingModel.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public | BindingFlags.DeclaredOnly) .ToDictionary(prop => prop.Name, prop => prop?.GetValue(generalSystemSettingModel, null)?.ToString() ?? ""); var keyValues = _keyValues.Where(x => dict.Keys.Contains(x.Key)).ToList(); if (keyValues.Any()) { //keyValues.ForEach(x => x.Value = dict[x.Key]); foreach (var keyValue in keyValues) { pr.SetValue(generalSystemSettingModel, keyValue.Key, keyValue.Value); } } return(generalSystemSettingModel); }
public bool SaveGeneralSystemSettingModel(GeneralSystemSettingModel generalSystemSettingModel) { var dict = generalSystemSettingModel.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public | BindingFlags.DeclaredOnly) .ToDictionary(prop => prop.Name, prop => prop?.GetValue(generalSystemSettingModel, null)?.ToString() ?? ""); var keyValues = _keyValues.Where(x => dict.Keys.Contains(x.Key)).ToList(); if (keyValues.Count == dict.Count) { keyValues.ForEach(x => x.Value = dict[x.Key]); } else { foreach (var item in dict) { _keyValues.Add(new KeyValue { Key = item.Key, Value = item.Value }); } //_uow.SaveChanges(); } return(_uow.SaveChanges() != 0); }