Обновить данные, когда я сделал изменение C # MVC - PullRequest
0 голосов
/ 15 октября 2019

У меня есть переключатели для включения и выключения настроек в приложении - это работает нормально, и значения корректно обновляются, но, поскольку они являются настройками, они мне нужны в 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;
        }
    }
 }

ЭтоВозможно, это не лучший способ для последовательной настройки параметров моего макета, поэтому любые указатели приветствуются.

Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...