Краткое руководство. Создание функции C# в Azure с помощью Visual Studio Code

В этой статье создается функция, активировающая HTTP, которая выполняется в .NET 8 в изолированном рабочем процессе. Сведения о версиях .NET, поддерживаемых для функций C#, см. в статье "Поддерживаемые версии".

Существует также версия этой статьи для интерфейса командной строки.

Выполнение этого краткого руководства предполагает небольшую дополнительную плату в несколько центов США в учетной записи Azure.

В этом видео показано, как создать функцию C# в Azure с помощью VS Code.

Действия в видео также описаны в следующих разделах.

Настройка вашей среды

Перед началом работы убедитесь, что выполнены следующие предварительные требования.

Установка или обновление основных средств

Расширение Функции Azure для Visual Studio Code интегрируется с Функции Azure core Tools, чтобы вы могли выполнять и отлаживать функции локально в Visual Studio Code с помощью среды выполнения Функции Azure. Прежде чем приступить к работе, рекомендуется установить Core Tools локально или обновить существующую установку, чтобы использовать последнюю версию.

В Visual Studio Code выберите F1, чтобы открыть палитру команд, а затем выполните поиск и выполните команду Функции Azure: установка или обновление основных инструментов.

Эта команда запускает установку на основе пакета последней версии Core Tools.

Создание локального проекта

В этом разделе вы используете Visual Studio Code, чтобы создать локальный проект Функций Azure на C#. Далее в этой статье вы опубликуете код функции в Azure.

  1. Щелкните значок Azure на панели действий, а затем в области Рабочая область (локальная) нажмите кнопку + и в раскрывающемся списке выберите команду Создать функцию. В ответ на запрос выберите вариант Создать проект.

    Снимок экрана: окно создания проекта.

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

  3. Введите следующие сведения по соответствующим запросам:

    Prompt Выбор
    Выбор язык для проекта приложения-функции Выберите C#.
    Выберите среду выполнения .NET Выберите .NET 8.0 Isolated (LTS).
    Выбор шаблона для первой функции проекта Выберите HTTP trigger.1
    Укажите имя функции Введите HttpExample.
    Укажите пространство имен Введите My.Functions.
    Уровень авторизации выберите Anonymous, что позволит любому пользователю вызывать конечную точку функции. Дополнительные сведения об уровне авторизации см. в разделе Authorization keys (Ключи авторизации).
    Выбор способа открытия проекта Выберите Open in current window.

    1 В зависимости от параметров VS Code может потребоваться использовать Change template filter этот параметр, чтобы просмотреть полный список шаблонов.

  4. Используя эти сведения, Visual Studio Code создает проект функций Azure с триггером HTTP. Файлы локального проекта можно просмотреть в Explorer. Дополнительные сведения о созданных файлах см. в разделе Созданные файлы проекта.

Локальное выполнение функции

Visual Studio Code интегрируется с Azure Functions Core Tools, чтобы перед публикацией в Azure можно было запустить этот проект на локальном компьютере разработки. Если у вас еще нет основных средств, вам будет предложено установить его при первом запуске проекта.

  1. Чтобы вызвать функцию, нажмите клавишу F5, чтобы запустить проект приложения-функции. На панели Терминал отобразятся выходные данные из Core Tools. Ваше приложение запускается в панели Терминал. Отобразится URL-адрес конечной точки активируемой HTTP-запросом функции, которая выполняется локально.

    Снимок экрана: выходные данные Visual Studio Code локальной функции.

    Если у вас еще нет основных инструментов, выберите "Установить ", чтобы установить основные инструменты при появлении запроса на это.
    При возникновении проблем с запуском в Windows убедитесь, что в качестве терминала по умолчанию для Visual Studio Code не используется оболочка WSL.

  2. С запущенными Core Tools перейдите в область Azure: Функции. В разделе Функции разверните Локальный проект>Функции. Щелкните правой кнопкой мыши (в Windows) или используйте Ctrl-щелчок (в macOS) на функции HttpExample и выберите Выполнить функцию....

    Снимок экрана: пункт

  3. В поле Введите текст запроса нажмите клавишу ВВОД, чтобы отправить запрос в функцию.

  4. При выполнении функции локально и возврате ответа в Visual Studio Code отобразится уведомление. Сведения о выполнении функции отображаются на панели Терминал.

  5. Нажмите клавиши CTRL+C, чтобы остановить Core Tools и отключить отладчик.

Убедившись, что функция выполняется правильно на локальном компьютере, опубликуйте проект в Azure с помощью Visual Studio Code.

Вход в Azure

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

  1. Если вы не выполнили вход, щелкните значок Azure на панели действий. Затем в области Ресурсы выберите Вход в Azure….

    Снимок экрана с окном входа в Azure в VS Code.

    Если вы уже выполнили вход и видите существующие подписки, перейдите к следующему разделу. Если у вас еще нет учетной записи Azure, нажмите кнопку "Создать учетную запись Azure...". Учащиеся могут выбрать создание учетной записи Azure для учащихся....

  2. В ответ на запрос в браузере выберите учетную запись Azure и войдите в нее с учетными данными Azure. Если вы создаете новую учетную запись, вы можете выполнить вход после ее создания.

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

Создание приложения-функции в Azure

В этом разделе показано, как создать приложение-функцию и связанные ресурсы в подписке Azure.

  1. Щелкните значок Azure на панели действий. Затем в области Ресурсы щелкните значок + и выберите вариант Создать приложение-функцию в Azure.

    Создание ресурса в подписке Azure

  2. Введите следующие сведения по соответствующим запросам:

    Prompt Выбор
    Выбор подписки Выберите подписку, которую нужно использовать. Эта подсказка не отобразится, если в области Ресурсы отображается только одна подписка.
    Ввод глобально уникального имени для приложения-функции Введите имя, допустимое в пути URL-адреса. Имя, которое вы вводите, проверяется, чтобы убедиться, что оно уникально в функциях Azure.
    Выберите стек сред выполнения Выберите версию языка, которая запускалась локально.
    Выбор расположения для новых ресурсов Для повышения производительности выберите регион рядом с вами.

    Расширение показывает на панели Azure: журнал действий состояние отдельных ресурсов по мере их создания в Azure.

    Журнал создания ресурсов Azure

  3. После завершения создания в вашей подписке будут созданы приведенные ниже ресурсы Azure. Имена ресурсов основаны на имени приложения-функции.

    • группу ресурсов — логический контейнер связанных ресурсов;
    • Учетная запись хранения Azure уровня "Стандартный" для сохранения состояния и других сведений о проектах.
    • Приложение-функция, которое предоставляет окружение для выполнения кода вашей функции. Приложение-функция позволяет группировать функции в логические единицы и упростить развертывание, масштабирование и совместное использование ресурсов, а также управление ими в рамках единого плана размещения.
    • План службы приложений, который определяет базовый узел для приложения-функции.
    • Экземпляр Application Insights, подключенный к приложению-функции, который отслеживает использование функций в приложении.

    После создания приложения-функции и применения пакета развертывания отобразится уведомление.

    Совет

    По умолчанию ресурсы Azure, необходимые для приложения функции, создаются на основе указанного имени приложения функции. По умолчанию они также создаются в той же новой группе ресурсов, что и приложение-функция. Если необходимо настроить имена этих ресурсов или повторно использовать существующие ресурсы, вам нужно опубликовать проект с дополнительными параметрами создания.

Развертывание проекта в Azure

Внимание

Развертывание в существующем приложении-функции всегда перезаписывает содержимое этого приложения в Azure.

  1. В области ресурсов действия Azure найдите только что созданный ресурс приложения-функции, щелкните ресурс правой кнопкой мыши и выберите "Развернуть в приложении-функции...".

  2. При появлении запроса на перезапись предыдущих развертываний выберите "Развернуть ", чтобы развернуть код функции в новом ресурсе приложения-функции.

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

    Снимок экрана с окном

Запуск функции в Azure

  1. Вернитесь в область Ресурсы на боковой панели, разверните подписку, выберите новое приложение-функцию и Функции. Щелкните правой кнопкой мыши (в Windows) или используйте Ctrl-щелчок (в macOS) на функции HttpExample и выберите Выполнить функцию....

    Снимок экрана: выполнение функции в Azure из Visual Studio Code.

  2. В поле Введите текст запроса отображается текст сообщения запроса { "name": "Azure" }. Нажмите клавишу ВВОД, чтобы отправить это сообщение запроса в свою функцию.

  3. При выполнении функции в Azure и возврате ответа в Visual Studio Code отобразится уведомление.

Очистка ресурсов

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

В противном случае выполните следующие действия, чтобы удалить приложение-функцию и связанные с ним ресурсы и избежать дополнительных расходов.

  1. В Visual Studio Code нажмите клавишу F1, чтобы открыть палитру команд. В палитре команд найдите и щелкните Azure: Open in portal.

  2. Выберите приложение-функцию и нажмите клавишу ВВОД. Страница приложения-функции откроется на портале Azure.

  3. На вкладке Обзор выберите именованную ссылку рядом с полем Группа ресурсов.

    Снимок экрана: выбор группы ресурсов, которую требуется удалить со страницы приложения-функции.

  4. На странице Группа ресурсов просмотрите список включенных ресурсов и убедитесь, что именно их нужно удалить.

  5. Выберите Удалить группу ресурсов и следуйте инструкциям.

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

Дополнительные сведения о затратах на использование Функций см. в статье Оценка затрат на план потребления.

Следующие шаги

С помощью Visual Studio Code вы создали приложение-функцию с простой функцией, активируемой HTTP-запросом. В следующей статье описано, как развернуть эту функцию, подключився к одной из основных служб хранилища Azure. Дополнительные сведения о подключении к другим службам Azure см. в статье Подключение функций к службам Azure с помощью привязок.