我一直在尝试学习领域驱动的概念并将其应用到我的软件开发中。我尝试做的第一件事是根据业务逻辑需求创建域模型。我也经常使用 OR Mapping 工具,例如 LLBLGen、NHibernate 或 Linq to SQL,来创建数据模型和数据访问层。然而,领域模型和数据模型通常非常相似,这让我想知道通过维护两个模型我真正得到了什么好处。

有人可以分享他们对领域驱动设计的实际想法吗?此外,在您的应用程序中应用 DDD 时,您将如何处理数据模型或数据访问层?

提前致谢。

编辑

找到了一个很好的 article ,带有示例代码,关于存储库模式。

最佳答案

我通过 Repository 模式抽象了我的数据访问,所以让我的域对象完全与 POCO 和数据提供者无关。

这使我能够从领域角度塑造我的应用程序,主要通过单元测试专注于逻辑。

一旦解决了这个问题,我就放入了展示层(通常是网页),然后提交到具体的数据库模式。然后我实现我的具体 Repository 类,它可以是 L2S。

我在这里起草了几篇文章 - http://www.duncangunn.me.uk/dasblog/2009/04/11/TheRepositoryPattern.aspx
http://www.duncangunn.me.uk/dasblog/2009/06/27/MockingLinqToSQLRepositories.aspx

在接下来的几周内请密切关注,因为我将记录并提供我的实现的示例代码,该代码也使用工作单元模式。

关于c# - 在 .NET 中应用领域驱动设计的最佳实践?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1196855/

10-11 11:58