我目前正在学习领域驱动设计开发方法,并使用 Tim McCarthy 编写的《.NET 领域驱动设计与 C#》一书作为指南。
这本书确实很有帮助,但在使用实体框架时我变得有点困惑,特别是 4.1 中提供的代码优先方法。
根据书中的示例,分层架构方法应该意味着基础设施层看不到模型/领域。
那么,在数据库上下文类中映射我的域 poco 的最佳方法是什么(我假设)应该位于基础设施层,而不违反分层方法?
我的想法很可能完全错误,所以请让我知道,因为我仍在学习!
非常感谢 :)
Adam
如今大多数 ORM,例如 EF 4.1 和 Nhibernate(流畅的 Nhibenrate 插件)都可以通过映射类描述从 POCO 到 Db 上下文的映射。这些映射类最好放置在基础设施数据库项目中,也许与 ORM 会话特定的类一起放置。
然后,您的 POCO 域类应该放置在一个域项目中,该项目不应该有任何对其他组件或项目的引用。但是基础设施数据库项目应该引用域,以便您的映射类可以描述如何从持久状态加载 POCO。
使用大量依赖注入以及良好且可靠的 IoC 框架(温莎城堡...)。这将帮助你放松一些。最好依赖抽象/接口而不是实现。
这是基础知识http://www.infoq.com/articles/ddd-in-practice http://www.infoq.com/articles/ddd-in-practice
但幸运的是,您决定采用“代码优先”方法。如果可以的话,我真的推荐这种方法。但有时当旧的遗留系统干扰时,事情就没那么容易了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)