【发布时间】:2018-07-07 01:24:27
【问题描述】:
我正在考虑使用 Entity Framework 6 Code First 与 DbUp 进行数据库交互来进行数据库架构更新。问题是我不想使用 EF 迁移是有原因的。所以,我已经达到的工作流程是:
- 更改模型(添加
POCOs、更改属性等) - 在
Visual Studio Package Manager Console中运行Add-Migration temp_file - 在
Visual Studio Package Manager Console中运行Update-Database -Script - 获取生成的
sql脚本,包括在表__MigrationHistory中插入新行 - 创建一个新的
.sql文件并传递生成的脚本 - 删除
temp_file - 运行 DbUp
它在本地和生产服务器上完美运行,但是每次生成新迁移时我都不愿意添加然后删除 temp_file(我希望有一种方法可以永久停止将 temp_file 添加到解决方案。)。
所以问题:
有没有更好的方法来使用DbUp 使用Entity Framework 进行数据库迁移?
【问题讨论】:
-
我很困惑,所以你不使用生成后的迁移而只是删除类?
-
@Saruman 是的,正确。
-
我认为您可以使用 power shell 配置文件扩展包管理器控制台,并且您可以编写自定义命令以满足您的需求
-
@Saruman 是的,但我对我的方法持怀疑态度。 EF 和 DbUp 已经存在了很长一段时间,建议的命令应该已经创建。
-
如果您使用工具从 POCO 模型生成创建表脚本并且根本不依赖实体框架进行迁移,那么每次运行 dbup 时都会创建模型。
标签: c# entity-framework database-migration dbup