相关疑难解决方法(0)

DDD - 实体无法直接访问存储库的规则

在领域驱动设计,似乎有很多协议,任何单位不得直接访问存储库.

这是来自Eric Evans Domain Driven Design的书,还是来自其他地方?

对于它背后的推理,哪里有一些很好的解释?

编辑:澄清:我不是在谈论将数据访问分离到业务逻辑的单独层的经典OO实践 - 我在谈论DDD中的特定安排,实体不应该与数据对话访问层(即它们不应该包含对Repository对象的引用)

更新:我给了BacceSR赏金,因为他的回答似乎最接近,但我仍然对这个问题一无所知.如果它有这么重要的原则,肯定会在网上有一些关于它的好文章吗?

更新:2013年3月,关于这个问题的投票意味着人们对此很感兴趣,即使有很多答案,我仍然认为如果人们有这方面的想法,还有更多的空间.

oop domain-driven-design s#arp-architecture repository-pattern

166
推荐指数
6
解决办法
3万
查看次数

DDD基础设施服务

我正在学习DDD,我在Infrastructure层有点丢失:

据我所知,"所有优秀的DDD应用程序"应该有4层:演示文稿,应用程序,域和基础架构.应使用存储库访问数据库.存储库接口应该位于域层和存储库实现中 - 在基础结构中(参考DDD:在哪里保留域接口,基础结构?).

应用程序,域和基础架构层应该/可能有服务(参考www.lostechies.com/blogs/jimmy_bogard/archive/2008/08/21/services-in-domain-driven-design.aspx),例如基础架构层中的EmailService它发送电子邮件.

但是,在基础架构层内部,我们有存储库实现,用于访问数据库.那么,在这种情况下,存储库是数据库服务?基础结构服务和存储库之间有什么区别?

提前致谢!

c# asp.net-mvc domain-driven-design

17
推荐指数
3
解决办法
1万
查看次数