【问题标题】:I can update database table from edmx model?我可以从 edmx 模型更新数据库表吗?
【发布时间】:2021-04-08 07:56:00
【问题描述】:

是否可以从 edmx 模型更新数据库表,例如,如果我在 edmx 图表中创建一个新字段到一个表,我想在数据库中更新相应的映射表添加这个新字段......在 Visual Studio 菜单中我找到了声音“从数据库更新模型”和“从模型创建数据库”,但我没有找到“从模型更新数据库”...

【问题讨论】:

  • 为什么不将字段添加到数据库表中,然后更新 EDMX,这是预期的工作流程?

标签: c# visual-studio entity-framework edmx-designer


【解决方案1】:

在 EF EDMX“模型优先”工作流程中,您始终会生成完整的数据库 DDL 脚本,对于增量更改,请使用 SSDT 等架构比较工具来创建更改脚本。

参见例如https://docs.microsoft.com/en-us/ef/ef6/modeling/designer/workflows/model-first#5-dealing-with-model-changes

这不是一个非常流行或有用的工作流程,而且从未构建过用于增量更新的工具。 广大大多数 EDMX 用户在没有自定义 EDMX 的情况下执行数据库优先的工作流程。

但是您真的应该停止使用 EDMX。图形设计器似乎开始更简单,但从长远来看,使用基于代码的映射更简单。

【讨论】:

    【解决方案2】:

    我不相信 Edmx(数据库拳头)以这种方式工作,至少,开箱即用。您需要先使用代码,然后启用迁移。 Edmx 只不过是映射到您的数据,与迁移无关。 我相信有一种方法可以首先使用 Visual Studio 自动生成代码……就像 Edmx 一样。

    【讨论】:

      猜你喜欢
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-15
      • 1970-01-01
      • 2017-04-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多