【问题标题】:EF run Seed method without model changesEF 运行 Seed 方法,无需更改模型
【发布时间】:2016-09-18 20:39:16
【问题描述】:

我有一个托管在 Azure 中的 webAPI 作为我的后端。我正在使用 Code-First 创建我的实体。我可以通过种子方法预先提供我的数据库,但是如果我完成了我的模型更改然后记住我需要向种子添加一些东西,那么就无法运行种子方法。 多个帖子建议使用简单的运行更新数据库。我确实看到了:“运行种子方法”。然后发布到天蓝色,我的表还是空的。而且我不想仅仅为了触发种子而更改模型,因为那不是干净的解决方案。

我已经尝试过使用每个注释行但没有用

    public MyContext() : base("name=MyContext")
    {
        //Database.SetInitializer(new MigrateDatabaseToLatestVersion<MyContext, MyProject.Migrations.Configuration>("DefaultConnection"));
        //Database.SetInitializer<MyContext>(new DropCreateDatabaseAlways<MyContext>());
    }

我应该在天蓝色方面做些什么,或者除非我改变我的模型,否则它显然不起作用!?

更新1:

我已经是迁移文件夹并按照命令启用它并更新数据库,当我有模型更改时,数据库更新就好了。那行得通,那里没有问题。如果我想向种子方法添加东西并且我想在不更改模型的情况下执行它,唯一的问题是。

【问题讨论】:

  • 您将什么发布到 Azure、您的项目或数据库?您可以创建数据库的本地副本,连接到该副本,然后查看它是否得到更新?

标签: c# entity-framework azure


【解决方案1】:

如果您首先使用代码,那么您可以轻松管理和处理所有迁移。

您需要使用包管理器控制台键入“enable-migrations”。在此之后,您将拥有一个名为 Migrations 的文件夹。

查看此link 了解更多信息。

如果您有任何问题,请告知。

【讨论】:

    猜你喜欢
    • 2017-07-07
    • 2016-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-01
    • 2019-06-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多