アーキテクチャと設計の観点から、イベントアグリゲータのパターンを理解しようとしています。これまでWPFでPrismを使用したことはありませんが、MSDNでPrismがどのように機能するかを調べています。
すべてのイベントについて、ユーザーはを拡張する新しいイベントオブジェクトを作成する必要があるように思われますCompositePresentationEvent
。また、新しいイベントオブジェクトには、継承元の機能以外の機能がないようです(通常はそれ自体のコードはありません)。
したがって、たとえば:
A AddNewStuffEvent
は次のようになります。
public class AddNewStuffEvent : CompositePresentationEvent<Object> {} //The end of the class
の場合HealthChangeEvent
:
public class HealthChangeEvent: CompositePresentationEvent<Object> {} //The end of the class
の場合BookFlipEvent
:
public class BookFlipEvent: CompositePresentationEvent<Object> {} //The end of the class
の場合BookCloseEvent
:
public class BookCloseEvent: CompositePresentationEvent<Object> {} //The end of the class
BookOpenEvent
そして、これは、などの小さなイベントごとに永遠に続く可能性がBookTearEvent
あります。したがって、特定の名前空間フォルダーには、大量のイベントクラスがあり、イベントアグリゲーターには、実行時にこれらすべてのイベントオブジェクトが読み込まれます。 。つまり、すべての小さなイベントには空のクラスが必要ですか?これはどのように機能しますか?これのためのより良い方法は何でしょうか?