繁体   English   中英

汇总根DDD / UoW /回购/服务

[英]Aggregate Roots DDD/UoW/Repo/Service

我对存储库的聚合对象有一些疑问。

我正在使用DDD / UoW / Repo和服务模式进行休息服务。 我们新的云Web应用程序将使用此服务。 为此,我们还必须同步仍在生产中的旧数据库中的数据。 我们创建了一个“ SyncService”,它可以在云中以及从地下读取和写入。

在我的Rest / DDD设计中。 而且我不希望在这些基础上运行业务逻辑,因此在原始测试项目中,我为每个模型都有一个存储库,并且端点仅执行一些简单的验证,然后使用该存储库将数据直接推送到数据库。

假设我有这些实体

  • 顾客
  • 订购
  • 订单行
  • 文章

数据库关系

  • 客户可以有很多订单。

  • 一个订单只能有一个客户。

  • 一个订单可以有多个OrderLine。

  • 一个OrderLine可以有一个Article。

问题

  • 除“条款”之外,是否所有这些总计?

  • 以及这些实体中的哪个拥有仓库?

  • 存储库是什么样的?

  • 我是否应该使“ SyncService”的端点仅与通用存储库对话以进行插入?

提前致谢。

  1. 除“条款”之外,是否所有这些总计?

我认为,如果没有访问业务逻辑并了解整个域的外观,就不可能回答这个问题。 例如,在某些系统中,“ Customer可以是一个集合,而“ Order只是一个实体,而在其他某些方面则是“后退”。 该决定应由建筑师做出。

2,3,4。 如果您使用DDD,则可以通过汇总访问实体。 我想说使用存储库模式的概念是可选的。 在某些情况下,您可以只使用纯数据库上下文,例如,如果您使用的是Entity Framework Core,则不必在其之上构建额外的存储库层,因为它本身已经是一个存储库。 因此,这些问题的答案将取决于一切。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM