しばやん雑記

ASP.NET とメイドさんが大好きなフリーランスのプログラマーのブログ

LocalMessageSender/Receiver を試す

2 つの Silverlight アプリケーション間でメッセージのやり取りが出来るようになりました。簡単なサンプルを上げて見ます。

Sender 側

// SL3Message という名前を持つ Receiver に送信する
var sender = new LocalMessageSender("SL3Message");
// 送信完了のイベントを捕らえる
sender.SendCompleted += (s, e) => MessageBox.Show(e.Response);
// メッセージを送信
sender.SendAsync("めっせーじ");

Receiver 側

// Sender と同じ名前を指定する
var receiver = new LocalMessageReceiver("SL3Message");
// 受信イベントを捕らえる
receiver.MessageReceived += (s, e) => e.Response = e.Message + "を受信したよ";
// メッセージが来るのを待つ
receiver.Listen();

基本はたったこれだけです、全て非同期で行われるのでいろいろと楽ですね。Receiver 側はコンストラクタで許可するドメインを指定することも出来るので安心です。