【问题标题】:New MVC 5 project with Existing Db - Code first vs EDMX (entity data model)具有现有 Db 的新 MVC 5 项目 - 代码优先与 EDMX(实体数据模型)
【发布时间】:2016-11-01 00:22:32
【问题描述】:
使用 MVC5、EF6... 我们将构建一个企业级应用程序。我们有一个现有的数据库。最好先使用 EF 代码并手动编写所有代码,这需要更长的时间,但可能更干净?还是我们应该使用 EF 数据库优先方法,使用 EDMX(实体数据模型)? EDMX 可以用于企业级应用程序,还是存在性能问题等...?你有什么建议?谢谢!
【问题讨论】:
标签:
c#
asp.net-mvc
entity-framework
entity-framework-6
【解决方案1】:
最好使用 EF 代码优先并手动编写所有代码,这
需要更长的时间,但可能更清洁?
恕我直言,Code First 是最好的解决方案。如果您通过执行此method 从现有数据库生成 Code First 类,则可能需要更少的时间。您还需要知道 EDMX 在 Entity Framework Core 版本(以前称为 Entity Framework 7)中不再存在。如果您计划迁移到 EF Core,Code First 可能会在未来为您提供帮助。
或者我们应该使用 EF 数据库优先的方法,使用 EDMX(实体数据模型)?
根据我的经验,我在使用 EDMX(来自数据库优先或模型优先)时遇到了很多合并冲突。如果很多人不得不在单独的分支中修改 EDMX,他们很快就会遇到 EDMX 合并冲突。相信我,有时很难解决。