Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Domain driven design 我应该在域对象中使用eventaggregator吗?_Domain Driven Design_Prism - Fatal编程技术网

Domain driven design 我应该在域对象中使用eventaggregator吗?

Domain driven design 我应该在域对象中使用eventaggregator吗?,domain-driven-design,prism,Domain Driven Design,Prism,在阅读了许多关于棱镜的文章之后。我还是很困惑 我正在尝试创建一个应用程序,其域对象将完全独立于GUI。用户还可以从命令行与应用程序交互。所以完全解耦。我正在尝试创建域对象的独立组件,这些组件可以使用一些事件相互通信。我应该如何实现这一点 我应该在域对象中使用事件聚合器吗?有几个职位相同,但他们没有给我一个满意的答案 如果没有,那么在域对象中实现相同功能的最佳方法是什么。您不应该在域对象中使用Prism中的事件聚合器,因为它用于UI事件。如果您希望在域模型中具有类似的行为,则应该使用。实际上,事件

在阅读了许多关于棱镜的文章之后。我还是很困惑

我正在尝试创建一个应用程序,其域对象将完全独立于GUI。用户还可以从命令行与应用程序交互。所以完全解耦。我正在尝试创建域对象的独立组件,这些组件可以使用一些事件相互通信。我应该如何实现这一点

我应该在域对象中使用事件聚合器吗?有几个职位相同,但他们没有给我一个满意的答案


如果没有,那么在域对象中实现相同功能的最佳方法是什么。

您不应该在域对象中使用Prism中的事件聚合器,因为它用于UI事件。如果您希望在域模型中具有类似的行为,则应该使用。实际上,事件聚合器已被域事件发布器所取代。

@Cuong Le-感谢您对其进行编辑。下次我不会提前说谢谢了。非常感谢。。但我很想知道这两者之间有什么区别。它们在本质上非常相似——将出版商和订阅者分离开来。它们的实现因其设计环境的限制而有所不同。例如,prism中的事件聚合器用于订阅域事件发布服务器不需要的订阅,因为这些订阅通常由工作单元确定范围。