2012-11-05 45 views
1

棱鏡上閱讀了許多文章之後。我仍然困惑!我應該更喜歡在域對象中使用eventaggregator嗎?

我試圖創建一個應用程序,它的域對象將是完全獨立的圖形用戶界面。用戶也可以從命令行與應用程序進行交互。所以完全解耦。我正嘗試製作可以使用某些事件相互交談的域對象的獨立組件。我應該如何實現這一點?

我應該更喜歡使用事件聚合在域中的對象?有幾個職位相同,但沒有一個給我一個滿意的答案。

如果沒有那麼什麼是實現域對象相同的功能最好的辦法。

+1

@Cuong樂 - 感謝編輯。下次我不會提前致謝:)。 –

回答

1

您不應該在Prism中爲域對象使用事件聚合器,因爲它用於UI事件。如果您希望在域模型中出現類似行爲,則應使用domain events。實際上,事件聚合器被域名事件發佈者取代。

+0

十分感謝..但我想知道的是這兩者之間的區別。 –

+1

它們在本質上非常相似 - 將發佈者與訂閱者分離。它們的實現不同於它們所設計的環境的地址約束。例如,棱鏡中的事件聚合器對於域事件發佈者不需要的訂閱使用[弱引用](http://msdn.microsoft.com/en-us/library/system.weakreference.aspx),因爲這些訂閱通常由一個工作單元來確定範圍。 – eulerfx

相關問題