Публикация приложения ASP.NET Core в Azure с помощью Visual Studio

Важно!

Предварительные версии ASP.NET Core в службе приложений Azure

Предварительные версии ASP.NET Core не развертываются в службе приложений Azure по умолчанию. Чтобы разместить приложение, которое использует предварительную версию ASP.NET Core, см. раздел Развертывание предварительной версии ASP.NET Core в службе приложений Azure.

В статье Устранение неполадок ASP.NET Core в Службе приложений Azure и IIS описывается устранение проблемы с развертыванием Службы приложений.

Настройка

Создайте бесплатную учетную запись Azure, если у вас ее нет.

Создание веб-приложения.

Запустите Visual Studio 2022 и нажмите Создать проект.

Create a new project from the start window

В диалоговом окне Создать проект выберите Веб-приложение ASP.NET Core и нажмите Далее.

Create an ASP.NET Core Web App

В диалоговом окне "Настройка нового проекта" назовите проект и нажмите кнопку "Далее".

В диалоговом окне Дополнительные сведения выполните следующие действия.

  • В входных данных Платформы выберите .NET 7.0 (стандартная поддержка терминов).
  • В входных данных типа проверки подлинности выберите отдельные учетные записи и нажмите кнопку "Создать".

Additional information

Visual Studio создает решение.

Выполнить приложение

  • Нажмите клавишу F5, чтобы запустить проект.

Web application open in Microsoft Edge on localhost

Регистрация пользователя

  • Выберите Зарегистрироваться и зарегистрируйте нового пользователя. Можно использовать вымышленный адрес электронной почты. После отправки на странице отображается следующая ошибка.

    *Не удалось выполнить операцию базы данных при обработке запроса. Применение существующих миграций может устранить эту проблему"

  • Выберите Применить миграции и после обновления страницы перезагрузите ее.

A database operation failed while processing the request

  • Отображается страница подтверждения регистрации. Щелкните здесь, чтобы подтвердить свою учетную запись.
  • Отображается страница подтверждения электронной почты.
  • Войдите в систему в качестве нового пользователя.

Приложение отобразит адрес электронной почты, который использовался для регистрации нового пользователя, и ссылку Выйти.

Web application open in Microsoft Edge. The Register link is replaced by the text Hello user@example.com!

  • Остановите приложение, закрыв браузер или в Visual Studio выберите "Отладочная>остановка отладки".
  • В Visual Studio выберите "Создать>чистое решение", чтобы очистить элементы проекта и избежать конфликтов с файлами.

Развертывание приложения в Azure

В Обозревателе решений щелкните проект правой кнопкой мыши и выберите Опубликовать.

Contextual menu open with Publish link highlighted

В диалоговом окне Публикация:

  • Выберите Azure.
  • Выберите Далее.

Publish dialog

В диалоговом окне Публикация:

  • Выберите Служба приложений Azure (Windows).
  • Выберите Далее.

Publish Dialog: select Azure Service

В диалоговом окне "Публикация" на вкладке Служба приложений выберите "Создать".

Publish dialog: select Azure Service instance

Отображается диалоговое окно Создание приложения службы:

  • Заполнены поля записи "Имя", "Группа ресурсов" и "План размещения". Вы можете сохранить эти имена или изменить их.
  • Выберите Создать.

Create App Service dialog

Как только создание завершится, диалоговое окно автоматически закроется и снова активируется окно Публикация.

  • Созданный экземпляр выбирается автоматически.
  • Выберите Готово.

Publish dialog: select App Service instance

Диалоговое окно " Ход создания профиля публикации" подтверждает создание профиля публикации. Выберите Закрыть.

Затем отобразится страница Сводка для профиля публикации. Visual Studio обнаружила, что для этого приложения требуется база данных SQL Server, которая указана в области зависимостей службы. Выберите многоточие (...), а затем Подключение.

Publish Profile summary page: configure SQL Server dependency

Появится диалоговое окно Подключение зависимости:

  • Выберите База данных SQL Azure.
  • Выберите Далее.

Configure SQL Server Dependency dialog

В диалоговом окне Подключение базы данных SQL Azure выберите "Создать".

Select Create a SQL DB

Появится окно Create Azure SQL Database (Создание базы данных SQL Azure).

  • В нем уже заполнены поля Имя базы данных, Группа ресурсов, Сервер базы данных и План службы приложений. Вы можете сохранить эти значения или изменить их.
  • Заполните поля Database administrator username (Имя администратора базы данных) и Пароль администратора базы данных для выбранного параметра Сервер базы данных . (Обратите внимание, что у используемой учетной записи должны быть разрешения на создание базы данных SQL Azure).
  • Выберите Создать.

New Azure SQL Database dialog

После завершения создания диалоговое окно автоматически закрывается, а Подключение для База данных SQL Azure диалогового окна снова получает фокус:

  • Созданный экземпляр выбирается автоматически.
  • Выберите Далее.

Select Next

На следующем шаге Подключение диалогового окна База данных SQL Azure:

  • Заполните поля Database connection user name (Имя пользователя для подключения к базе данных) и Database connection password (Пароль для подключения к базе данных). Эти сведения ваше приложение будет использовать при подключении к базе данных во время выполнения. Рекомендуется не использовать те же сведения, что и имя пользователя администратора и пароль, используемые на предыдущем шаге.
  • Выберите Готово.

Configure Azure SQL Database dialog, connection string details

Диалоговое окно хода выполнения конфигурации зависимостей подтверждает настройку База данных SQL Azure. Выберите Закрыть.

На странице "Сводка профиля публикации" выберите "Дополнительные действия">

Publish profile summary page: edit settings

На вкладке Параметры диалогового окна публикации:

  • Разверните раздел Базы данных и установите флажок Использовать эту строку подключения во время выполнения.

  • Разверните миграцию Entity Framework и выберите "Применить эту миграцию" для публикации.

  • Выберите Сохранить. Visual Studio вернется в диалоговое окно Публикация.

Publish dialog: Settings panel:Save

Нажмите кнопку Опубликовать. Visual Studio публикует приложение в Azure. После завершения развертывания.

Last step

Приложение открывается в браузере. Зарегистрируйте нового пользователя и войдите в систему в качестве нового пользователя, чтобы проверить развертывание базы данных и подключение во время выполнения.

Обновление приложения

  • Измените Pages/Index.cshtmlRazor страницу и измените его содержимое, а затем сохраните изменения. Например, вы можете изменить абзац на "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>
    
  • На странице Сводка для профиля публикации снова нажмите кнопку Опубликовать.

Publish profile summary page

  • После публикации приложения обновите страницу и убедитесь, что внесенные изменения доступны в Azure.

Verify task is complete

Очистка

Завершив тестирование приложения, перейдите на портал Azure и удалите приложение.

  • Выберите пункт Группы ресурсов, а затем созданную группу ресурсов.

Azure Portal: Resource Groups in sidebar menu

  • На странице группы ресурсов выберите "Удалить группу ресурсов".

Azure Portal: Resource Groups page

  • Введите имя группы ресурсов и выберите Удалить. Ваше приложение и все ресурсы, созданные при работе с этим руководством, удалены из Azure.

Дополнительные ресурсы