Я проводил рефакторинг некоторого кода, который первоначально использовал Messenger
в MVVM Foundation, чтобы теперь использовать Messenger
в MVVM Light Toolit. Единственное, для чего я не могу найти эквивалент, - это случай, когда все, что вы хотите сделать, - это отправить токен (т. Е. Токен действует как уникальный идентификатор сообщения и сообщения. сам по себе).
Оригинальный код (Фонд MVVM) - одна строка делает все
// send code
mvvmFoundationMessenger.NotifyColleagues("QuestionTimedOut");
// register code
mvvmFoundationMessenger.Register(
"QuestionTimedOut",
() => UpdateOnQuestionTimedOut());
Новый код (MVVM Light) - есть ли более элегантное решение, чем это?
// send code
mvvmLightMessenger.Send("QuestionTimedOut", "QuestionTimedOut");
// register code
mvvmLightMessenger.Register<string>(
this,
"QuestionTimedOut",
token => UpdateOnQuestionTimedOut());
Я понимаю, что мог бы явно обновить NotificationMessage
, но это добавило бы еще больше кода.