0

我在我的 ASP.NET MVC 4 项目和迁移/配置文件中使用新的迁移,我有以下内容:

public Configuration()
        {
            AutomaticMigrationsEnabled = false;
            AutomaticMigrationDataLossAllowed = false;
        }

在同一个文件文件中,我还有一个用于填充我的数据库的 Seed 方法。我注意到每次我运行我的应用程序时,即使模型没有改变,它也会为数据库重新设定种子。在我的 global.asax 文件中,我在 Application_Start 中有以下数据库初始化程序

Database.SetInitializer(new MigrateDatabaseToLatestVersion<UtilitiesContext, Migrations.Configuration>());

如果模型更改或我运行 Update-Database 命令,我只希望它为数据库播种。我该怎么做呢?

4

2 回答 2

0

DropCreateDatabaseIfModelChanges 呢?请参阅此MSDN 文章。仅当数据库与模型不同时,才会重新设置种子。

用法:

 Database.SetInitializer(new DropCreateDatabaseIfModelChanges<UtilitiesContext>());
于 2012-08-04T00:26:05.810 回答
0

实际上,我只是一起删除了初始化语句并且它起作用了。

于 2012-08-08T14:57:06.180 回答