【问题标题】:EF Code first and Database firstEF 代码优先和数据库优先
【发布时间】:2016-06-22 16:51:29
【问题描述】:

我将使用 MVC Web API 启动一个新应用程序。 Api 应该与 DB 通信。数据库尚未设计,但该数据库将与多个应用程序通信。所以我必须选择哪种方式。

【问题讨论】:

  • 代码优先将是一个好方法。使用代码优先,您甚至可以使用源代码控制跟踪数据库更改。您可能会认为您必须编写更多模式。但与此同时,您将获得更多的控制权。
  • Database first 在 EF Core 中的工作方式不同。 msdn.microsoft.com/en-us/magazine/dn890367.aspx
  • 想想您将如何管理数据库更改等。您打算使用 EF 迁移还是让 DBA 控制更改。此外,您将如何使所有应用程序保持最新。最后,您将如何在生产中推出新版本的应用程序和数据库,以免发生任何故障(严格来说不是 CodeFirst/DbFirst 问题,但仍然值得思考)。在较大的团队中使用 EF 迁移存在一些问题。如果您使用 edmx/csdl/ssdl/msl 执行 DbFirst 合并到这些文件可能是问题所在。此外,如果您自定义模型(csdl)更新数据库,您将覆盖您的模型。

标签: entity-framework asp.net-web-api entity-framework-6


【解决方案1】:

代码优先对您来说是一个不错的选择,原因如下:

  • 程序员更喜欢代码优先
  • EF Core 支持良好
  • 更灵活
  • 您可以使用限界上下文与其他数据库进行通信

其他信息:

图片复制自: http://www.entityframeworktutorial.net/choosing-development-approach-with-entity-framework.aspx

【讨论】:

    猜你喜欢
    • 2012-08-12
    • 2023-03-11
    • 2019-10-23
    • 2012-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    相关资源
    最近更新 更多