ca9*_*3d9 1 asp.net asp.net-mvc entity-framework asp.net-mvc-4 entity-framework-5
我正在开发MVC 5,EF 5.0代码.我使用文件共享文件夹发布项目.
当模型更改时,我可以使用数据库迁移来更新开发的localDb.但是,在将项目发布到远程服务器之后,它显示了使用完整SQL数据库服务器的生产Web服务器上所需更改的模型和迁移所需的错误.
我知道我可以删除生产服务器上的数据库并让它重新创建数据库.但是,表中已有用户输入的数据.
有没有办法在不重新创建数据库的情况下应用模型/数据库更改?
是的,有办法.实际上有几个.
您可以生成可应用于生产数据库的SQL脚本.使用-Script标志在程序包管理器控制台中运行Update-Database,如下所示:
Update-Database -Script -SourceMigration:InitialMigration -TargetMigration:LatestMigration
或者使用Red Gate SQL Compare之类的工具生成脚本.
在应用程序启动时,您可以通过注册MigrateDatabaseToLatestVersion数据库初始化程序自动升级数据库:
Database.SetInitializer(new MigrateDatabaseToLatestVersion());
您可以在文章MSDN - Code First Migrations中阅读有关这两种方法的更多信息.
| 归档时间: |
|
| 查看次数: |
1861 次 |
| 最近记录: |