domain-driven-design - 所有 "bulk"操作都属于 DDD 的什么地方?

标签 domain-driven-design abstraction ddd-repositories

在 DDD 中,关键概念之一是存储库,它允许您检索实体(或聚合根),然后在更新后将它们保存回来。

假设我们需要对实体执行一些“批量”操作,并且实体的数量使得将它们检索到内存中是绝对不可能的。 IE。操作只能在数据库中进行。

这种“批量”操作的地方在哪里?它应该是存储库上的方法吗?它不会“泄漏”具有数据库特定操作的存储库抽象吗?它不会将业务操作从实体转移到存储库吗?

最佳答案

我认为它应该是一种服务。

Evans 在他的书中建议,当您怀疑是否将一个“不好闻”的方法放入一个类中,因为您认为它不属于那里时,请创建一个带有内部操作的 ServiceFoo 类。

关于domain-driven-design - 所有 "bulk"操作都属于 DDD 的什么地方?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/562117/

相关文章:

c# - DDD : entity's collection and repositories

c# - 通用抽象方法

model-view-controller - 如何解耦存储库和实体

domain-driven-design - 存储库应该进入哪一层?

domain-driven-design - 基础设施层中的领域驱动设计存储库实现

php - ddd - 与远程 API 的同步应该去哪里?

C++:抽象类中需要静态函数

c++ - 在我的命名空间中隐藏 DirectX 命名空间

java - 存储库可以返回 DDD 中的分页集合吗?

nhibernate - 为什么CQRS查询端不使用ORM