WPF Mvvm решает порядок событий и создает вид - PullRequest
0 голосов
/ 08 декабря 2018

Я только начинаю с WPF и MVVMCross, так что просто нужна ваша помощь, ребята :) Я приведу вам краткий пример моей проблемы:

У меня есть ContactViewModel, и в этой виртуальной машине я подписан на какой-то случайНапример, событие Connected, которое запускается, когда я перехожу из автономного режима в онлайн.Но это событие происходит до того, как моя виртуальная машина была создана, поэтому я никогда не буду получать уведомления об этом в рамках этой виртуальной машины.

Я столкнулся с этой проблемой, и мне интересно, как такие проблемы решаются в мире клиентов,как вы можете упорядочить / сохранить / сохранить / не пропустить все эти события, которые вам нужны, и что, очевидно, происходит до того, как ваша модель представления активна?

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

1 Ответ

0 голосов
/ 08 декабря 2018

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

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

Если событие относится к клиенту, вам нужна служба Windows, которая загружается при запуске, чтобы отслеживать события и записывать их в очередь сообщений.Когда вы запускаете приложение, в котором запускается процесс, который может прочитать очередь и переключиться на собственные события запуска.Ваша модель представления получит ссылку на это (часто путем внедрения зависимости, как предложил сэр Руфо), и данные будут доступны с помощью метода.

...