首先是一些背景信息。 我正在研究的项目包含18个域名,分为5个包。
在使用.NET框架创建MVC Web应用程序时,使用repoitory模式和工作单元。需要多少个存储库?
提前致谢。
答案 0 :(得分:0)
这是一个基于意见的问题,但如果我正在研究这个项目,我决定为每个聚合编写一个存储库。 什么是聚合?
Martin Fowler说:
聚合是域驱动设计中的一种模式。 DDD聚合是一个 可以视为单个单元的域对象集群。一个 示例可以是订单及其订单项,这些将是分开的 对象,但处理订单(连同其行)很有用 items)作为单一聚合。
聚合将其组件对象之一作为聚合 根。来自聚合外部的任何引用都应该只转到 聚合根。因此,根可以确保完整性 聚合为一个整体。
聚合是数据存储传输的基本要素 - 您 请求加载或保存整个聚合。交易不应该 交叉聚合边界。
请查看Effective Aggregate Design by Vaughn Vernon有关如何设计聚合的信息,您可以查看DDD Community website中的其他链接。