1

iobservable パターンを使用して、一連のイベントを公開したいと考えています。問題は、ユニティを使用してオブザーバーとイベント ジェネレーターの両方を作成していることです。イベントのリッスンを開始できるように、アプリケーションの開始時にこれらの両方を新しくする必要はありません。これについて何か提案はありますか?

4

1 に答える 1

2

私のコメントへの返信を読んだ後(遅れて申し訳ありません、私のコメントを参照してください)、それを解決する2つの方法を考えることができます.

まず、まだ作成されていないソースIObservableをラップする (つまり、サブスクライブする)へのサブスクライバー サブスクライバーを設定します。IObservableこのようにして、サブスクライバーはすぐにサブスクライブできますが、ソースが作成されるまで値は送信されません。

もう 1 つの選択肢は、 Prism (2.2、私は 4 をチェックアウトしていません) に同梱されるIObservableフレーバー バージョンを作成することです。はブロードキャスト イベント システムとして機能します。これにより、どのコードでも、サブスクライブまたはパブリッシュできる を要求できます。あなたの場合、イベントは実装されます(つまり、 と の両方)。EventAggregatorEventAggregatorEventISubjectIObservableIObserver

于 2010-09-26T09:06:05.430 に答える