【发布时间】:2011-07-23 17:03:39
【问题描述】:
使用 Entity Framework 4.1 Code-first 优于 Model/Database-first 和 EDMX 图的优缺点是什么?
我正在尝试完全了解使用 EF 4.1 构建数据访问层的所有方法。我正在使用存储库模式和IoC。
我知道我可以使用代码优先的方法:手动定义我的实体和上下文,并使用ModelBuilder 来微调架构。
我还可以创建EDMX 图表并选择使用 T4 模板生成相同的POCO 类的代码生成步骤。
在这两种情况下,我都会得到与 ORM 无关的 POCO 对象和派生自 DbContext 的上下文。
Database-first 似乎最吸引人,因为我可以在 Enterprise Manager 中设计数据库,快速同步模型并使用设计器对其进行微调。
那么这两种方法有什么区别呢?仅仅是 VS2010 与 Enterprise Manager 的偏好吗?
【问题讨论】:
-
Entity Framework 7 正在删除 EDMX:msdn.microsoft.com/en-us/magazine/dn890367.aspx
-
@CADbloke Entity Framework 7 现在是 Entity Framework Core 1.0
-
对于任何其他浏览器,除非您对 7000 个长 XML 文件有耐心并解决上述合并冲突,go code first 让自己头疼
-
在 2015 年 1 月,roland.kierkels.net/c-asp-net/… 有一篇很好的关于这三种方法的文章
-
几乎所有给出的答案都是“我认为”...“主要基于意见”的绝对定义。
标签: entity-framework ef-code-first entity-framework-4.1 poco ef-database-first