我已经从运行到Azure的TFS连续传递到C#项目,这很好。通过使用Team Foundation服务将SQL数据库连续传递到Windows Azure
我现在想要连续交付使用我的SQL数据库。
目前我有一个SQL 2008 R2数据库,它包含数据库。
什么是最好的选择,以确保我可以提供使用从TFS连续交付包括数据库更改?
重要的是它需要在签入TFS时自动执行。
我已经从运行到Azure的TFS连续传递到C#项目,这很好。通过使用Team Foundation服务将SQL数据库连续传递到Windows Azure
我现在想要连续交付使用我的SQL数据库。
目前我有一个SQL 2008 R2数据库,它包含数据库。
什么是最好的选择,以确保我可以提供使用从TFS连续交付包括数据库更改?
重要的是它需要在签入TFS时自动执行。
我刚刚遇到了这个问题,发现很难找到指导,但已经在我的应用程序中进行了管理,我对MVC和Azure非常陌生,所以请原谅,如果这不是太详细。
这就是我所做的;
在我的Global.asax.cs Application_start()
我说:
Database.SetInitializer(new MigrateDatabaseToLatestVersion<ApplicationDbContext, Configuration>());
哪里ApplicationDbContext
是您的上下文的名称。请记住添加对Models
课程和Migrations
课程的参考。
当你这样做时,我认为当上下文第一次被调用并且它不会删除并重新创建数据库时,数据库上会运行迁移。
我遇到的一个问题是,我收到一个错误,指出对象已经存在于数据库中,因为__MigrarionHistory
表中没有任何迁移数据,因此它试图从头开始创建数据库。幸运的是我的应用程序还没有生效,所以我可以删除这些表并提交给TFS,并且它重新创建了所有内容,并且包含所有__MigrationHistory
,所以现在,任何新的代码第一次迁移都会在第一次命中时运行并且数据库被更新。如果这个数据库是活的,我不知道该怎么办!
希望有帮助
这是不是针对EntityFramework代码?我有的项目类型是一个数据库项目 – Coppermill 2014-02-09 15:31:07
啊,道歉 - 我认为这是一个EntityFramework代码的第一个项目。抱歉! – Bizzle 2014-02-09 15:53:01