EF核心数据库优先和EF核心代码优先方法有什么区别?

时间:2019-06-08 05:04:14

标签: asp.net-core ef-code-first entity-framework-core ef-database-first

我想知道...由于EF Core中没有EDMX,这两个之间有什么区别?而且,如果主要的区别是可以更改数据库表,那么为什么不先使用代码,然后再使用EF代码优先的迁移?

1 个答案:

答案 0 :(得分:0)

数据库优先

DB-First是您对现有数据库进行反向工程以创建Entity Framework模型,而不是手动设计EDMX并生成SQL脚本来创建数据库,我们先构建后者,然后使用Entity Framework生成前者设计器工具。

代码优先

Code-First使用迁移功能从您定义的数据模型创建数据库。

但是,只要我们处理的是一个很小的项目(例如微服务),并且/或者我们的目标是建立一个灵活,可变的小规模数据结构,那么采用Code-First方法几乎可以永远是一个不错的选择。