使用 Visual Studio 将 ASP.NET Core 应用发布到 Azure

重要

Azure 应用服务的 ASP.NET Core 预览版

默认情况下,ASP.NET 核心预览版不会部署到 Azure 应用服务。 若要托管使用 ASP.NET Core 预览版的应用,请参阅 将 ASP.NET Core 预览版部署到 Azure 应用服务

若要排查应用服务部署问题,请参阅 排查 Azure 应用服务和 IIS 上的 ASP.NET Core 问题。

设置

如果没有 Azure 帐户,请打开 免费的 Azure 帐户

创建 Web 应用

启动 Visual Studio 2022 并选择“创建新项目”

从“启动”窗口创建新项目

在“创建新项目”对话框中,选择“ASP.NET Core Web 应用”,然后选择“下一步”

创建 ASP.NET Core Web 应用

“配置新项目 ”对话框中,命名项目,然后选择“ 下一步”。

在“其他信息”对话框中:

  • 框架输入中,选择 .NET 7.0(标准术语支持)。
  • “身份验证类型 输入”中,选择 “个人帐户”,然后选择“ 创建”。

其他信息

Visual Studio 创建解决方案。

运行应用

  • 按 F5 运行项目。

在 localhost 上的 Microsoft Edge 中打开 Web 应用程序

注册用户

  • 选择 “注册 ”并注册新用户。 可以使用虚构的电子邮件地址。 提交时,页面会显示以下错误:

    处理请求时数据库操作失败。 应用现有迁移可以解决此问题”

  • 选择 “应用迁移” ,并在页面更新后刷新页面。

处理请求时数据库作失败

  • 此时会显示 “注册确认 ”页。 选择 “单击此处”以确认帐户
  • 将显示 “确认电子邮件 ”页。
  • 以新用户身份登录。

该应用显示用于注册新用户和 注销 链接的电子邮件。

在 Microsoft Edge 中打开 Web 应用程序。注册链接将替换为文本 Hello user@example.com!

  • 通过关闭浏览器来停止应用程序,或在 Visual Studio 中选择 “调试>停止调试”。
  • 在 Visual Studio 中,选择“ 生成>清理解决方案 ”以清理项目项并避免文件争用。

将应用部署到 Azure

右键单击解决方案资源管理器中的项目,然后选择“ 发布”。

上下文菜单打开,其中突出显示了“发布”链接

“发布 ”对话框中:

  • 选择 Azure
  • 选择“下一步”。

“发布”对话框

“发布 ”对话框中:

  • 选择 Azure 应用服务(Windows)。
  • 选择“下一步”。

发布对话框:选择 Azure 服务

“发布 ”对话框中的“ 应用服务 ”选项卡中,选择“ 新建”。

“发布”对话框:选择“Azure 服务实例”

此时会显示 “创建应用服务 ”对话框:

  • “名称、资源组和托管计划的条目字段已被填充。” 可以保留这些名称或更改这些名称。
  • 选择 创建

“创建应用服务”对话框

创建完成后,对话框会自动关闭, “发布 ”对话框将再次获得焦点:

  • 将自动选择刚刚创建的新实例。
  • 选择完成

“发布”对话框:选择“应用服务实例”

“发布配置文件创建进度”对话框确认已创建发布配置文件。 选择 关闭

接下来会看到 “发布配置文件摘要 ”页。 Visual Studio 检测到此应用程序需要 SQL Server 数据库,该数据库已在“服务依赖项”窗格中列出。 选择省略号 (...),然后选择 “连接”。

发布配置文件摘要页:配置 SQL Server 依赖项

此时会显示 “连接到依赖项 ”对话框:

  • 选择“Azure SQL 数据库”
  • 选择“下一步”。

配置 SQL Server 依赖项对话框

“连接到 Azure SQL 数据库 ”对话框中,选择“ 新建”。

选择“创建 SQL 数据库”

此时会显示 “创建 Azure SQL 数据库 ”:

  • 将填充 数据库名称资源组数据库服务器应用服务计划 条目字段。 可以保留这些值或更改这些值。
  • 输入所选数据库服务器的数据库管理员用户名数据库管理员密码(请注意,使用的帐户必须具有创建新的 Azure SQL 数据库所需的权限)
  • 选择 创建

“新建 Azure SQL 数据库”对话框

创建完成后,对话框会自动关闭, “连接到 Azure SQL 数据库 ”对话框将再次获得焦点:

  • 将自动选择刚刚创建的新实例。
  • 选择“下一步”。

选择“下一步”

“连接到 Azure SQL 数据库 ”对话框的下一步:

  • 输入 数据库连接用户名数据库连接密码 字段。 这些是应用程序在运行时连接到数据库的详细信息。 最佳做法是避免使用与上一步中使用的管理员用户名和密码相同的详细信息。
  • 选择完成

配置 Azure SQL 数据库对话框,连接字符串详细信息

“依赖项配置进度”对话框确认已配置 Azure SQL 数据库。 选择 关闭

“发布配置文件摘要”页中,选择“更多操作”>编辑

发布个人资料摘要页:编辑设置

“发布”对话框的“设置”选项卡上:

  • 展开 数据库并勾选在运行时使用此连接字符串

  • 展开 Entity Framework 迁移,然后选择“在发布时应用此迁移”。

  • 选择“保存”。 Visual Studio 返回到 “发布 ”对话框。

发布对话框:设置面板:保存

单击“发布”。 Visual Studio 将应用发布到 Azure。 部署完成后。

最后一步

应用在浏览器中打开。 注册新用户并作为新用户登录,以验证数据库部署和运行时连接。

更新应用

  • Pages/Index.cshtml Razor编辑页面并更改其内容,然后保存更改。 例如,可以修改段落,说出“Hello ASP.NET Core!”:

    @page
    @model IndexModel
    @{
        ViewData["Title"] = "Home page";
    }
    
    <div class="text-center">
        <h1 class="display-4">Welcome</h1>
        <p>Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core</a>.</p>
        <p>Hello ASP.NET Core!</p>
    </div>
    
  • 再次从“发布配置文件摘要”页中选择“发布”

发布个人简介摘要页

  • 发布应用后,刷新页面,并验证所做的更改是否在 Azure 上可用。

验证任务是否已完成

清理

测试完应用后,请转到 Azure 门户 并删除该应用。

  • 选择 “资源组”,然后选择创建的资源组。

Azure 门户:边栏菜单中的资源组

  • “资源组 ”页中,选择“ 删除资源组”。

Azure 门户:“资源组”页

  • 输入资源组的名称,然后选择“ 删除”。 本教程中创建的应用和所有其他资源现已从 Azure 中删除。

其他资源