【问题标题】:Is it possible to use EF codefirst database initialisers in Migrator .NET migrations?是否可以在 Migrator .NET 迁移中使用 EF 代码优先数据库初始化程序?
【发布时间】:2011-09-22 10:03:12
【问题描述】:

我正在使用 Migrator.NET 来管理我们生产环境中的架构更改。因为我一直使用 EF 代码优先,所以对数据库的所有开发都是代码优先类的增量,并且没有对项目应用任何迁移。

但是,一旦项目进入生产环境,我希望能够开始使用迁移。作为基线“向上”迁移,我想使用代码优先的数据库初始化程序来创建数据库并使用默认数据进行初始化。但是,我遇到了问题,因为 EF 上下文类和我的 EF 初始化程序的包装类位于 .NET 4 中,而迁移器 .NET 使用的是 .NET 2。

运行迁移器控制台应用程序时,我收到“此程序集由比当前加载的运行时更新的运行时构建...”

我是否期望它起作用?我可以使用 OSQL 并在服务器上创建 SQL 脚本,但如果它像在开发环境中那样工作,那就太好了。

【问题讨论】:

    标签: entity-framework ef-code-first migratordotnet


    【解决方案1】:

    嗯。奇怪的。即使 migratordotnet 二进制文件位于 .NET 2 中,您也应该能够使用它。我参与了一个项目,我们就是这样做的。如果架构不存在,我们使用 EF Code First 自动生成架构,否则我们将运行迁移到现有架构(我们在仍处于开发阶段时开始创建迁移步骤)。

    【讨论】:

    • 我不认为我可以混合使用 .NET 版本的库。如果它们位于单独的程序集中,则可以,但如果我希望我的客户端程序集位于 .NET2(迁移器类)中并访问 .NET4 程序集,则不行。我可能错了……
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-21
    • 2016-05-26
    • 1970-01-01
    • 1970-01-01
    • 2013-01-20
    • 2011-10-10
    • 2016-11-06
    相关资源
    最近更新 更多