因此,我首先使用实体框架数据库构建了我的应用程序。我的数据库只有 2 个表,非常小。
我在 YT 上看过一些有关部署到 Azure 的视频,但看起来它们都使用 CodeFirst 方法,然后在包管理器上使用启用迁移,然后使用复选框发布应用程序来执行代码迁移。
但是由于我使用 Database First 构建了我的应用程序,所以我无法使用此功能。启用迁移功能仅适用于 Code First。
那么,我该怎么做才能将我的数据库放在 Azure 上并部署我的应用程序?
编辑解决方案:
在 SQL Server 管理工具上,如果单击数据库上的右键并转到“任务”,您将找到以下选项“在 Azure SQL Server 数据库上植入数据库”。
您只需指定云中服务器的实例、登录名和密码,然后单击“下一步”,它就会为您部署数据库。 重要提示:首先,您需要与本地计算机和 Azure Sql Server 建立连接。为此,您需要将计算机的 IP 地址插入云服务器的防火墙定义中。此链接对此进行了很好的解释:https://learn.microsoft.com/en-us/aspnet/mvc/overview/getting-started/database-first-development/publish-to-azure
然后,迁移数据库后,您只需获取在 AzureCloud 上插入的新数据库的 ConnectionString,然后转到 Visual Studio 上的应用程序,发布,更新连接字符串并部署。
最佳答案
按照以下步骤操作即可:
右键单击该项目并选择“发布”。
选择 Microsoft Azure 网站。
选择“新建”以创建新的网络应用程序。(如果未登录,请输入您的凭据)
填写必要的详细信息并为数据库创建新服务器,并为此新数据库服务器提供用户名和密码。完成后,单击“创建”。
保持值不变,这些是您的人脉值。
单击数据库连接旁边的省略号 (...),记下数据库服务器和数据库的名称。
单击“确定”,然后在“发布 Web”窗口中单击“下一步”以查看预览。单击“发布”。
发布后,该网站会立即在网络浏览器中启动。您的网站已部署,但是,您将收到错误,因为您的表尚未发布。
将数据库发布到 SQL Azure
- 在发布数据库之前,您必须确保您的本地计算机可以连接到数据库服务器。数据库服务器的防火墙限制哪些计算机可以连接到数据库。您需要将计算机的IP地址添加到防火墙允许的IP地址中。
- 通过 Azure 门户登录您的 Azure 帐户。
- 选择您的新数据库,然后选择“管理”。
- 您必须配置数据库服务器以允许来自您的计算机的连接。当您选择“管理”时,系统会要求您添加数据库服务器允许的当前 IP 地址。选择"is"。
- 您在上一步中添加的 IP 地址可能不是您需要配置连接的唯一 IP 地址。您可以尝试登录数据库以查看连接是否已正确设置。提供您之前创建的用户名和密码。
如果您收到错误消息,则需要添加另一个 IP 地址。单击错误消息可查看有关错误的更多详细信息。在详细信息中,您将看到需要添加的 IP 地址。记下此 IP 地址。
关闭此登录窗口,然后返回 Azure 门户。导航到您的数据库的仪表板。单击“管理允许的 IP 地址”。
您现在必须添加错误消息中的 IP 地址。要么更改允许的 IP 地址范围以包含错误消息中的地址,要么将该 IP 地址添加为单独的条目。
保存对允许的 IP 地址的更改。单击“管理”,然后尝试再次登录数据库。您可能需要等待几分钟,才能为防火墙正确配置允许的 IP 地址。当您可以成功登录数据库时,您就完成了与数据库的连接设置。
您可以将此管理窗口保持打开状态,因为您很快就会检查数据库部署的结果。
返回到您的数据库项目。右键单击该项目并选择“发布”。
在“发布数据库”窗口中,选择“编辑”。
提供数据库服务器的名称以及服务器的身份验证凭据。提供凭据后,从可用数据库列表中选择您创建的数据库。默认情况下,Visual Studio 将数据库字段的名称设置为您的项目名称,该名称可能与您创建的数据库不同。单击“确定”。单击“发布”。
你就完成了
关于c# - ASP.NET MVC - 如何首先使用实体框架模型/数据库部署到 Azure?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45025295/