У меня есть переключатели для включения и выключения настроек в приложении - это работает нормально, и значения корректно обновляются, но, поскольку они являются настройками, они мне нужны в BaseViewModel, чтобы я мог их использовать (настройки пользовательского интерфейса и т. Д.)
Когда я сохраняю, сохранение работает, но я не получаю новое значение, так как я уже установил его.
Есть ли какой-нибудь способ вернуть мне измененное значение каждый разнастройка изменена?
public void UpdateSettings(List<SettingViewModel> settings)
{
var config = new MapperConfiguration(cfg => {
cfg.CreateMap<Data.Setting, SettingViewModel>().ReverseMap();
});
IMapper mapper = config.CreateMapper();
foreach (var item in settings) {
Data.Setting setting = db.Settings.Find(item.SettingId);
var model = mapper.Map(item, setting);
db.SaveChanges();
}
}
Это успешно обновляет настройку
public BaseViewModel()
{
//Settings
Settings = new List<Data.Setting>();
Settings.AddRange(UserForge.GetUserSettings(this.Person.UserId));
// End Settings
}
Это мой BaseViewModel, который используется в моем Layout.cshtml, мне нужны эти настройки для обновления в любое время при изменениисделано как на виде - Model.Settings.X по-прежнему установлен на то, что значения были при запуске приложения.
На моем _Layout.cshtml у меня есть это
@{
// Check for application settings here.
var curvedUiSetting = false;
var val = false;
if (Model.Person != null)
{
var uiSetting = Model.Settings.Where(n => n.SettingType == 0 && n.SettingsType == 0).SingleOrDefault();
if (uiSetting != null)
{
curvedUiSetting= uiSetting.IsOn;
}
}
}
ЭтоВозможно, это не лучший способ для последовательной настройки параметров моего макета, поэтому любые указатели приветствуются.
Большое спасибо.