【问题标题】:Entity framework model creation实体框架模型创建
【发布时间】:2010-07-18 07:23:30
【问题描述】:

使用实体框架时,基本上有两种方法可以创建模型。您可以在 SQL Server 或 Visual Studio EF 设计器中创建模型。这些概述如下。

从数据库开始

您首先在 SQL Server 数据库中创建模型,然后指向 EF 为您创建 .edmx 文件。通过使用这种方法,您可以使用 SQL Server Management Studio 创建所有模型和关系。

从 Visual Studio EF 设计器开始

这种方法是首先在 Visual Studio 中创建模型,然后从该模型中创建您的数据库。通过这样做,您似乎不必太关心表格和关系。

这就是我的工作以及我这样做的原因

我首先使用 SQL Server Management Studio 创建模型。我这样做是因为我认为使用该工具创建和修改表更容易,而且我确切地知道正在创建什么。我通过将其指向我现有的数据库来创建我的 EF 模型。之后,我创建了一个Visual Studio Database Project,以便将我的数据库编写到我放入版本控制的文件中。当我需要进行更改时,我会更改数据库,然后更新我的 .edmx 文件以及我的数据库项目。

我想知道这些不同方法的优缺点是什么?决定使用哪种方法的标准应该是什么?我做错了吗?我应该先在 Visual Studio 中创建模型吗?

【问题讨论】:

  • 这里是 my 方法:从 anywhere 开始并在 anywhere 进行更改。如果一个用户喜欢在 VS 中更新模型,而另一个用户喜欢直接在数据库中进行更改,让他们这样做。 youtube.com/watch?v=doqYOlcEAZM
  • 感谢您对数据库项目的有趣阅读。听起来对我来说是个不错的解决方案。
  • 我总是使用 SQL Server 数据库项目,将其发布到我的 sql server,然后根据我的数据库中的架构生成我的 edmx。

标签: sql database entity-framework entity-framework-designer


【解决方案1】:

我认为没有“正确”或“错误”的方式来做到这一点,很大程度上取决于您如何部署代码、代码的去向等。还有第三种方式,Scott Guthrie 在博客中写道关于最近:

http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx


附带说明一下,即使您从模型设计人员开始,我认为您始终必须考虑您的表/关系,因为在数据库中弄错这些可能会给您带来更大的问题。

【讨论】:

    【解决方案2】:

    我认为没有正确或错误的方法。

    在我们公司,我们首先直接开发数据库更改,将它们应用于现有模型的 edmx 模型。
    对于新模型,我们首先创建 edmx 模型,然后生成数据库。从那时起,我们通常直接更新数据库。在我们在内部测试了我们的代码并且它正确运行之后,并且我们知道我们的 SQL 数据库是正确的(当然是在签入之前),然后我们将通过对数据库进行 SQL 比较来将更改应用到数据库项目到数据库项目。

    这对我们来说效果很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-26
      • 1970-01-01
      • 2010-10-08
      • 2017-08-01
      • 1970-01-01
      • 2021-05-28
      • 2011-09-08
      • 2016-10-16
      相关资源
      最近更新 更多