0

我是实体框架和 MVC 的新手,并试图了解什么构成了新应用程序的良好设计方法。

有几种使用实体框架的方法。但是,对于我的项目,最好的选择是 DB First。我玩过一个 EDMX 文件,并且我已经使用 DbContext 代码生成器来创建我的包装类。

我计划使用存储库和工作单元模式,并使用 ninject 进行 DI。

但是,从 SoC 的角度来看,虽然我的存储库将从我的代码中隐藏数据存储 (EF) 的实现,但模型类本身非常具有 EF 风格,这似乎并不“合适”。

似乎使用基于 EDMX 的 EF 方法模糊了关注点的分离。只有 POCO 支持似乎允许真正的分离,但 POCO 还有一些我不喜欢的其他限制。

我错过了什么,还是使用 EDMX 有这个缺点?

人们是否使用自动映射器在实体模型和另一个干净的 SoCced 模型之间进行转换?

谢谢

4

1 回答 1

0

我对 Separation of Concerns 问题没有强烈的意见,但是我使用了标准 ADO.Net 版本的 EF 和 POCO,并且为 POCO 自定义 T4 代码生成脚本的输出一点也不难解决您对创建的对象结构的任何担忧。这听起来可能是您想要做的事情的一个很好的起点。

一旦您知道您正在寻找 T4 模板,就会有很多教程和许多有用的 SO 问题可以让您了解需要做什么。

于 2012-07-13T16:14:33.347 回答