Как вызывать сервисы при перемещении одной ViewModel на другую - PullRequest
0 голосов
/ 30 апреля 2019

У меня LandingPageViewModel с GetHomework Button. Если я нажму на GetHomework Button, это займет HomeworkPageViewModel.

Теперь проблема в том, где позвонить в мою службу, чтобы получить данные для домашней работы?

В LandingPageViewModel s GetHomeworkExecute() методе и удерживайте все записи домашней работы в общедоступной переменной ИЛИ используйте NavigationParameter для перехода на следующую страницу, затем используйте ее в HomeworkPageViewModel (или в других ViewModel s, если удерживаете запись в глобальной переменной).

OR

В HomeworkPageViewModel s OnNavigatingTo() (я думаю, действует как перегрузка), переопределенный на INavigatedAware

Как правильно позвонить в службу при переводе одного ViewModel на другой?

1 Ответ

1 голос
/ 30 апреля 2019

Я бы поместил его в HomeworkPageViewModel, возможно, в конструкторе (если это не вызов async). Обоснование: если HomeworkPageViewModel может это сделать (поскольку ему не нужна дополнительная информация), то пусть это сделает. Старайтесь не распространять вещи, держите код вместе.

...