实体框架 - DEV 方法

在本章中,我们将重点介绍如何使用设计器或数据库优先或仅使用代码优先来构建模型。以下是一些指导原则,可帮助您决定选择哪种建模工作流程。

  • 我们已经看到了 Code First 建模、Database First 建模和 Model First 建模工作流程的示例。

  • Database First 和 Model First 工作流程使用了设计器,但一个从数据库开始创建模型,另一个从模型开始创建数据库。

Designer Model
  • 对于那些不想使用 Visual Designer 和代码生成的开发人员,Entity Framework 有一个完全不同的工作流程,称为 Code First。

  • Code First 的典型工作流程非常适合您甚至没有数据库的全新应用程序。您定义类和代码,然后让 Code First 确定数据库应该是什么样子。

  • 也可以从数据库开始使用 Code First,这使得 Code First 有点矛盾。但是有一个工具可以让您将数据库逆向工程为类,这是开始编码的好方法。

鉴于这些选项,让我们看看决策树。

  • 如果您更喜欢在生成的代码中使用可视化设计器,那么您将需要选择涉及 EF 设计器的工作流程之一。如果您的数据库已经存在,那么 Database First 就是您的选择。

  • 如果您想在没有数据库的全新项目上使用可视化设计器,那么您将需要使用 Model First。

  • 如果您只想使用代码而不是设计器,那么 Code First 可能适合您,同时还可以选择使用将数据库逆向工程为类的工具。

  • 如果您有现有的类,那么最好的选择是将它们与 Code First 一起使用。