1

Prism の eventaggregator は常に見られますが、GetEvent でのみ使用されますが、これは非常に奇妙です。私は古い CAB イベント システムに慣れています。現在は Marlon Grech の Mediator 実装を使用しています。文字列定数を定義しているため、単純な int または値型の場合、データを起動/ラップするために余分なクラスを作成する必要はありません。

[MediatorMessageSink(MediatorMessages.AddSchoolclass, ParameterType = typeof(int))]
        public void OnSchoolclassAdded(int schoolclassId)
        {
            // do stuff with schoolclassId
        }

Prismn の eventaggregator で同じことを行うにはどうすればよいですか

4

1 に答える 1

0

すべての集約イベントに使用する単一のイベント クラスを宣言し、ペイロードとして文字列を渡すこともできますが、その方法はあまりお勧めしません。Prism の開発者は、非常に混乱するでしょう。

Event Aggregator は、古い CAM とは異なるアーキテクチャを使用します。変更を行ったときにイベント オブジェクトが必要になることにも満足できませんでした。しかし、それ以来、私はそのアプローチに納得しています。イベント オブジェクトは基本的に、ReSharper テンプレートを使用して生成するワンライナーです。私がこれをとても気に入っている理由は、イベントに合わせて必要なロジックを配置する場所を提供してくれるからです。

于 2011-03-31T21:10:17.653 に答える