.net - 使用 Entity Framework 4.3 迁移而不依赖于实际数据库

标签 .net entity-framework entity-framework-4.3 entity-framework-migrations

EF 迁移看起来很酷,但有太多的“魔法”在进行,而且关于它实际在做什么的解释很少。我想要做的就是设置迁移点并获取 DDL 脚本——从一个迁移到另一个迁移的“差异”脚本或整个创建 DDL 脚本。

问题是所有迁移命令似乎都依赖于存在的实际数据库来执行一堆我不感兴趣的东西。有没有办法绕过所有这些而只使用迁移来生成脚本?

最佳答案

这是 discussed yesterday .迁移命令依赖于您的工作数据库,因为它们与 __MigrationHistory 交互。表以获取实际状态并正确计算必须进行的更改。

如果您只需要创建脚本,您可以通过使用带有附加参数的 Update-Database 来实现:

为整个数据库创建脚本:

Update-Database -Script -SourceMigration:$InitialDatabase 

创建用于从迁移 A 升级到迁移 B 的脚本:
Update-Database -Script -SourceMigration:"A" -TargetMigration:"B"

关于.net - 使用 Entity Framework 4.3 迁移而不依赖于实际数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10809989/

相关文章:

c# - Entity Framework ——幕后 : DataReaders and connection life period

.net - 使用 F# 查询 Entity Framework 的示例

c# - 仅通过一个字段从对象列表中查找不同的值

.net - 将 protobuf-net 添加到我的 WCF Rest 服务

entity-framework - 单元测试 Entity Framework 验证

c# - 如何从自定义 SQL "AdminUsers"表中为管理员保护 MVC4 区域

c# - 未创建 Entity Framework 数据库

entity-framework - Entity Framework 将多个表映射到一个实体

entity-framework - 实体不公开外键属性的 DbUpdateException

c# - 我的项目中安装了哪个版本的 Entity Framework ?