0

CustomerListViewModel と OrderListViewModel があります。後者では、注文を選択して削除するか、新しい注文を作成します。どちらの状況でも、CustomerListViewModel と Messenger は IOrder 型に登録する必要があります。

Messenger.Default.Register<IOrder>(this, AddOrder);
Messenger.Default.Register<IOrder>(this, DeleteOrder);

In the OrderListViewModel I do send the customer to be deleted/added:

Messenger.Default.Send<IOrder>(MyOrderObject);

Now both Actions AddOrder and DeleteOrder gets surely executed, how can I differentiate ?
4

1 に答える 1

0

挿入または削除の場合、所有者はヒントを送信しません。したがって、受信者は自分で推測または発見することしかできません。私の提案は、追加のメッセージ タイプ (IAddOrder、IDeleteOrder) を導入することです。送信者には、変更のタイプを伝えるインターフェイスがあります。これが不可能な場合は、IOrder に何らかの情報を追加する必要がありますが、メッセージを交換した後はデータが不要になるため、これは面倒な回避策にすぎません。

于 2010-10-16T21:25:11.167 に答える