我只是在研究在我们的项目中使用EF迁移,特别是在不同版本之间执行生产中的模式更改.
我曾经提到,有一个API可以使用DbMigration
类在运行时执行这些迁移,但我找不到任何具体的例子.
理想情况下,我希望每个数据库更改都有一个DbMigration
文件,并且在应用程序从当前版本到最新版本启动时自动应用这些更改.
我只是在研究在我们的项目中使用EF迁移,特别是在不同版本之间执行生产中的模式更改.
我曾经提到,有一个API可以使用DbMigration
类在运行时执行这些迁移,但我找不到任何具体的例子.
理想情况下,我希望每个数据库更改都有一个DbMigration
文件,并且在应用程序从当前版本到最新版本启动时自动应用这些更改.
有一个数据库初始值设定项可用于在启动时实现到最新版本的迁移(或者更好的情况是,dbinitializer将在第一次访问数据库时生效),即MigrateDatabaseToLatestVersion
,您可以这样使用它:
Database.SetInitializer<ObjectContext>(
new MigrateDatabaseToLatestVersion<ObjectContext, Configuration>());
关于每次迁移一个文件的问题,如果启用自动迁移,您将在项目根目录的Migrations
文件夹(默认情况下)中找到它们.
相关信息和示例,请点击此处:http://weblogs.asp.net/fredriknormen/archive/2012/02/15/using-entity-framework-4-3-database-migration-for-any-project.aspx