【发布时间】:2015-11-18 09:24:01
【问题描述】:
我正在尝试学习一些关于 DDD 的概念,而持久化聚合的部分让我有点困惑。我已经阅读了关于 SO 主题的各种答案,但似乎没有一个回答我的问题。
假设我有一个 Product 的聚合根。现在我不想注入 ProductRepository,它将在 Product 类本身的构造函数中保留这个聚合根。想象一下我写的代码像
var prod = new Product(Factory.CreateProductRepository(), name, costprice);
在 UI 层。如果我不想通过聚合根中的依赖注入来注入我的存储库,那么问题是这段代码应该去哪里?我应该只为持久化这个 AR 创建一个类吗?谁能建议解决此问题的正确和推荐方法是什么?
我关心的不是使用哪个 ORM 或如何使这个 ARM ORM 友好或易于持久化,我的问题是正确使用存储库或任何持久性类。
【问题讨论】:
标签: c# domain-driven-design persistence aggregateroot