发布到 Azure 后如何管理迁移
How manage migrations after publishing to Azure
我正在使用 Azure 上发布的 Web 应用 asp.net(.net 框架)身份框架。
我用 Azure 字符串更改 web.config
文件中的 connectionString
,一切正常。
我在上下文中做了一个简单的更改,当我发送 get
请求时,我从 PostMan 收到了这个错误:
The model backing the 'MYCONTEXTNAME' context has changed since the database was created. Consider using Code First Migrations to update the database.
当我在本地工作时,我使用命令 Add-Migrations
和 Update-Database
来更新 table 结构,但在 Azure 中我必须做什么?
我该如何解决这个问题?
谢谢
G.
您还需要 运行 将这些迁移更改迁移到 Azure 数据库。
备份 Azure 中的数据库并更改代码中的连接字符串,运行 迁移更改
转到程序包管理器控制台并
Run - Update-Database -force
获取脚本并应用于您的 Azure 数据库
因此,当数据库架构发生任何变化时,您需要像往常一样生成迁移,然后在 Azure 数据库上也执行它们。
通常,当我们在任何环境(这里是 Azure)上部署时,我们会使用脚本来使用它,并使用一些工具(例如 Jenkins)来自动执行此操作。对于迁移,您可以使用 migrate.exe 使用脚本执行迁移。
否则,您也可以从 Visual Studio 中执行迁移,就像您在本地环境中所做的那样。但是不建议用于生产实例。只需确保启动项目中的连接字符串指向 Azure 数据库,并将所需的防火墙设置配置为允许从执行命令的计算机和 Azure 上的数据库进行访问。
我正在使用 Azure 上发布的 Web 应用 asp.net(.net 框架)身份框架。
我用 Azure 字符串更改 web.config
文件中的 connectionString
,一切正常。
我在上下文中做了一个简单的更改,当我发送 get
请求时,我从 PostMan 收到了这个错误:
The model backing the 'MYCONTEXTNAME' context has changed since the database was created. Consider using Code First Migrations to update the database.
当我在本地工作时,我使用命令 Add-Migrations
和 Update-Database
来更新 table 结构,但在 Azure 中我必须做什么?
我该如何解决这个问题?
谢谢
G.
您还需要 运行 将这些迁移更改迁移到 Azure 数据库。
备份 Azure 中的数据库并更改代码中的连接字符串,运行 迁移更改
转到程序包管理器控制台并
Run - Update-Database -force
获取脚本并应用于您的 Azure 数据库
因此,当数据库架构发生任何变化时,您需要像往常一样生成迁移,然后在 Azure 数据库上也执行它们。
通常,当我们在任何环境(这里是 Azure)上部署时,我们会使用脚本来使用它,并使用一些工具(例如 Jenkins)来自动执行此操作。对于迁移,您可以使用 migrate.exe 使用脚本执行迁移。
否则,您也可以从 Visual Studio 中执行迁移,就像您在本地环境中所做的那样。但是不建议用于生产实例。只需确保启动项目中的连接字符串指向 Azure 数据库,并将所需的防火墙设置配置为允许从执行命令的计算机和 Azure 上的数据库进行访问。