1

我阅读了这篇关于 EF 代码首次迁移的帖子,但它使用了“包管理器控制台”,这对共享主机无效。我想知道您如何在生产环境中部署 EF 代码优先数据库更改。手动更改数据库好不好?

4

1 回答 1

0

您不需要使用包管理器控制台来进行迁移。有一个名为 MigrateDatabaseToLatestVersion 的数据库初始化程序可以为您解决问题(可以在此处阅读)。它将让您创建一个配置文件,该文件将包含您希望数据库在任何迁移时执行的任何特定设置或播种。

设置好之后,您需要在代码中执行以下操作:

Database.SetInitializer(new MigrateDatabaseToLatestVersion<MyDbContext,Configuration>());
var db = new MyDbContext();
db.Database.Initialize(true);

这将根据您的代码优先设置自动为您执行迁移。

于 2013-02-18T18:00:52.033 回答