2013-08-01 28 views
4

我正在使用Windows Azure托管ASP.NET MVC4 Web应用程序。我想使用数据库第一编程,并遵循this tutorial创建数据库和数据模型。Windows Azure发布配置文件不更新数据库

然后我在Windows Azure中创建了一个包含链接数据库的网站。我下载了发布配置文件,并通过VS2012将其导入到项目中。我注意到数据库连接字符串没有包括在内,所以我从Azure中创建的数据库收集它。

在选项卡“设置”下的发布向导中,我可以选中一个名为“更新数据库”的框,当我第一次发布网站时,一切都变得完美了,网站和数据库也被上传了。

然后我对数据库做了一些更改,更新了上述教程中描述的数据模型,更新了我的代码并构建了项目。这一次,当我进入发布向导并选择“设置”选项卡时,我不再能够检查“更新数据库”复选框。相反,有一个名为“Execute Code First Migrations(在应用程序启动时运行)”的禁用复选框“。

为什么我不能再选择“更新数据库”复选框?我是否必须从现在开始手动更新数据库?我试图再次创建数据模型,但它没有帮助。

回答

3

这是一个完全正常的行为。您首次设置该选项,并且在连续部署时,代码优先的迁移将在应用程序启动时发生。 EF(实体框架)将开始Code-First迁移。

尤其是当您手动更新模型时。

您不必手动更新数据库。它将在应用程序启动时完成。当您的网络应用程序启动时,如果您选择迁移选项。

了解更多详细位置:

EF Code First Migrations Deployment to an Azure Cloud Service

相关问题