2011-01-05 13 views
5

Byłem refactoring niektóre kod, który był pierwotnie przy użyciu Messenger w fundacji MVVM, aby teraz użyć Messenger w MVVM Light Toolit. Jedną rzeczą, której nie mogę znaleźć odpowiednika, jest przypadek, w którym wszystko, co chcesz zrobić, to wysłanie tokena (to znaczy Token działa zarówno jako unikalny identyfikator wiadomości, jak i sam komunikat).Czy można wysłać tylko token za pośrednictwem MVVM Light Messenger?

oryginalny kod (Fundacja MVVM) - jeden ciąg to wszystko

// send code 
mvvmFoundationMessenger.NotifyColleagues("QuestionTimedOut"); 

// register code 
mvvmFoundationMessenger.Register(
    "QuestionTimedOut", 
    () => UpdateOnQuestionTimedOut()); 

New Code (MVVM Light) - czy istnieje bardziej eleganckie rozwiązanie niż to?

// send code 
mvvmLightMessenger.Send("QuestionTimedOut", "QuestionTimedOut"); 

// register code 
mvvmLightMessenger.Register<string>(
    this, 
    "QuestionTimedOut", 
    token => UpdateOnQuestionTimedOut()); 

Zdaję sobie sprawę, mogłem wyraźnie nowy Up NotificationMessage ale byłoby dodać jeszcze więcej kodu.

+0

Czy następna wersja jest gotowa? Robię dokładnie to samo z MVVM Foundation do MVVM Light! –

+0

@Dimitris, jak dotąd, to nie jest naprawione. – devuxer

Odpowiedz

5

Dobra uwaga. Stawiam to na zaległości dla MVVM Light VNext.

+0

Dzięki, Laurent! – devuxer

0

Można czerpać z MvvmLight na Messenger i dodawać własne metody wygodę lub można dodać MessengerExtension Methods w klasie przedłużacza.

Powiązane problemy