Inicio rápido: Creación de una función de C# en Azure mediante Visual Studio Code

En este artículo se crea una función de desencadenador HTTP que se ejecuta en .NET 8 en un proceso de trabajo aislado. Para más información sobre las versiones de .NET compatibles con las funciones de C#, consulte Versiones compatibles.

También hay una versión basada en la CLI de este artículo.

Este inicio rápido supone un pequeño costo en su cuenta de Azure.

En este vídeo se muestra cómo crear una función de C# en Azure mediante VS Code.

Los pasos del vídeo también se describen en las secciones siguientes.

Configurar su entorno

Antes de empezar, asegúrese de que cumple los siguientes requisitos:

Instalación o actualización de Core Tools

La extensión Azure Functions para Visual Studio Code se integra con Azure Functions Core Tools para que pueda ejecutar y depurar las funciones localmente en Visual Studio Code mediante el entorno de ejecución de Azure Functions. Antes de empezar, es recomendable instalar Core Tools localmente o actualizar una instalación existente para usar la versión más reciente.

En Visual Studio Code, seleccione F1 para abrir la paleta de comandos y, a continuación, busque y ejecute el comando Azure Functions: Instalar o actualizar Core Tools.

Este comando inicia una instalación basada en paquetes de la versión más reciente de Core Tools.

Creación del proyecto local

En esta sección se usa Visual Studio Code para crear un proyecto local de Azure Functions en C#. Más adelante en este artículo, publicará el código de función en Azure.

  1. Elija el icono de Azure en la barra Actividad. A continuación, en el Área de trabajo (local), seleccione el botón + y elija la opción Crear función en la lista desplegable. Cuando se le pida una confirmación, seleccione Crear nuevo proyecto.

    Captura de pantalla de la ventana para crear un nuevo proyecto.

  2. Seleccione una ubicación de directorio para el área de trabajo del proyecto y, después, seleccione el botón Seleccionar. Debe crear una nueva carpeta o elegir una carpeta vacía en la que ubicar el área de trabajo del proyecto. No elija una carpeta de proyecto que ya forme parte de un área de trabajo.

  3. Escriba la siguiente información cuando se le indique:

    Prompt Número de selección
    Seleccionar un lenguaje para el proyecto de funciones Elija C#.
    Seleccione un entorno de ejecución .NET. Elija .NET 8.0 Isolated (LTS).
    Seleccionar una plantilla para la primera función de su proyecto Elija HTTP trigger.1
    Proporcionar un nombre de función Escriba HttpExample.
    Proporcionar un espacio de nombres Escriba My.Functions.
    Nivel de autorización Elija Anonymous, que permite que cualquier llame al punto de conexión de la función. Para obtener información sobre el nivel de autorización, consulte Claves de autorización.
    Seleccionar cómo desea que se abra el proyecto Seleccione Open in current window.

    1 Según su configuración de VS Code, es posible que tenga que usar la opción Change template filter para ver la lista completa de plantillas.

  4. Visual Studio Code generará un proyecto de Azure Functions con un desencadenador HTTP a partir de la información que se proporciona. Los archivos del proyecto locales se pueden ver en Explorer. Para obtener más información sobre los archivos que se crearán, consulte Archivos de proyecto generados.

Ejecución local de la función

Visual Studio Code se integra con Azure Functions Core Tools para que pueda ejecutar este proyecto en un equipo de desarrollo local antes de publicarlo en Azure. Si aún no tiene instalado localmente Core Tools, se le pedirá que lo instale la primera vez que ejecute el proyecto.

  1. Para llamar a la función, presione F5 para iniciar el proyecto de aplicación de funciones. El panel Terminal muestra la salida de Core Tools. La aplicación se inicia en el panel Terminal. Puede ver el punto de conexión de la dirección URL de la función desencadenada por HTTP que se ejecuta localmente.

    Captura de pantalla de la salida de Visual Studio Code de la función local.

    Si aún no tiene Core Tools instalado, seleccione Instalar para instalar Core Tools cuando se le pida que lo haga.
    Si tiene problemas para ejecutarlo en Windows, asegúrese de que el terminal predeterminado de Visual Studio Code no esté establecido en WSL Bash.

  2. Mientras se ejecuta Core Tools, vaya al área Azure: Funciones. En Functions, expanda Proyecto local>Functions. Haga clic con el botón derecho (Windows) o Ctrl + clic en (macOS) en la función HttpExample y elija Execute Function Now... (Ejecutar la función ahora...).

    Captura de pantalla de la opción Ejecutar la función ahora de Visual Studio Code.

  3. En Escribir el cuerpo de la solicitud, presione la tecla ENTRAR para enviar un mensaje de solicitud a la función.

  4. Cuando la función se ejecuta localmente y devuelve una respuesta, se genera una notificación en Visual Studio Code. La información sobre la ejecución de la función se mostrará en el panel Terminal.

  5. Presione Ctrl + C para detener Core Tools y desconectar el depurador.

Después de comprobar que la función se ejecuta correctamente en el equipo local, es el momento de usar Visual Studio Code para publicar el proyecto directamente en Azure.

Inicio de sesión en Azure

Para poder crear recursos de Azure o publicar la aplicación, debe iniciar sesión en Azure.

  1. Si aún no ha iniciado sesión, elija el icono de Azure en la barra de actividades. Después, en el área Recursos, elija Iniciar sesión en Azure...

    Captura de pantalla del inicio de sesión en la ventana de Azure dentro de VS Code.

    Si ya ha iniciado sesión y puede ver las suscripciones existentes, vaya a la siguiente sección. Si aún no tiene una cuenta de Azure, elija Crear una cuenta de Azure.... Los estudiantes pueden elegir Crear una cuenta de Microsoft Azure for Students....

  2. Cuando se le solicite en el explorador, elija su cuenta de Azure e inicie sesión con las credenciales de la misma. Si opta por crear una cuenta, podrá iniciar sesión una vez que haya completado el proceso de creación.

  3. Cuando haya iniciado sesión correctamente, puede cerrar la nueva ventana del explorador. Las suscripciones que pertenezcan a la cuenta de Azure se mostrarán en la barra lateral.

Cree la aplicación de funciones en Azure

Durante el transcurso de esta sección, podrá crear una aplicación de funciones y los recursos relacionados con esta en la suscripción de Azure.

  1. Seleccione el icono de Azure en la barra de actividades. A continuación, en el área Recursos, seleccione el icono + y elija la opción Crear aplicación de funciones en Azure.

    Creación de un recurso en la suscripción de Azure

  2. Escriba la siguiente información cuando se le indique:

    Prompt Número de selección
    Seleccionar suscripción elija la suscripción que desee usar. Si solo tiene una suscripción visible en el área Recursos, esta solicitud no se mostrará.
    Escribir un nombre único global para la aplicación de funciones Escriba un nombre que sea válido en una ruta de acceso de la dirección URL. El nombre que escriba se valida para asegurarse de que es único en Azure Functions.
    Seleccione una pila en tiempo de ejecución Elija la versión de lenguaje que ha estado ejecutando localmente.
    Seleccionar una ubicación para los nuevos recursos Para mejorar el rendimiento, elija una región cerca de usted.

    La extensión mostrará el estado de los recursos individuales en el panel Azure: Registro de actividad a medida que estos se creen.

    Registro de creación de recursos de Azure

  3. Cuando se complete el proceso de creación, se crearán los siguientes recursos de Azure en la suscripción. Los recursos se denominarán en función del nombre de la aplicación de funciones:

    • Un grupo de recursos, que es un contenedor lógico de recursos relacionados.
    • Una cuenta de Azure Storage estándar, que mantiene información de estado y de otro tipo sobre los proyectos.
    • Una aplicación de funciones, que proporciona el entorno para ejecutar el código de función. Una aplicación de funciones permite agrupar funciones como una unidad lógica para facilitar la administración, la implementación y el uso compartido de recursos en el mismo plan de hospedaje.
    • Un plan de App Service, que define al host subyacente de la aplicación de funciones.
    • Una instancia de Application Insights conectada a la aplicación de funciones, que hace un seguimiento del uso de las funciones de la aplicación.

    Una vez que se haya creado la aplicación de función se mostrará una notificación y se aplicará el paquete de implementación.

    Sugerencia

    De forma predeterminada, los recursos de Azure que requiere la aplicación de funciones se crean según el nombre de la aplicación de funciones que proporcione. De forma predeterminada, estos también se crean en el mismo nuevo grupo de recursos que contiene la aplicación de funciones. Si lo que quiere es personalizar los nombres de estos recursos o reutilizar recursos existentes, deberá publicar el proyecto con opciones de creación avanzadas.

Implementar el proyecto en Azure

Importante

Los procesos de implementación en aplicaciones de funciones existentes siempre sobrescriben el contenido de esas aplicaciones en Azure.

  1. En el área Recursos de la actividad de Azure, busque el recurso de la aplicación de funciones que acaba de crear, haga clic con el botón derecho en el recurso y seleccione Implementar en la aplicación de funciones....

  2. Cuando se le solicite sobrescribir las implementaciones anteriores, seleccione Implementar para implementar el código de función en el nuevo recurso de aplicación de funciones.

  3. Cuando se complete el proceso de implementación, seleccione Ver salida para visualizar los resultados de la creación y la implementación, incluidos los recursos de Azure que ha creado. Si se pierde la notificación, seleccione el icono de campana en la esquina inferior derecha para verlo de nuevo.

    Captura de pantalla de la vista de la ventana de salida.

Ejecución de la función en Azure

  1. Vuelva al área Recursos de la barra lateral. A continuación, expanda la suscripción, la nueva aplicación de funciones y las Funciones. Haga clic con el botón derecho (Windows) o Ctrl + clic en (macOS) en la función HttpExample y elija Execute Function Now... (Ejecutar la función ahora...).

    Captura de pantalla de ejecutar la función en Azure desde Visual Studio Code.

  2. En Enter request body (Especificar el cuerpo de la solicitud) verá el valor del cuerpo del mensaje de solicitud de { "name": "Azure" }. Presione Entrar para enviar este mensaje de solicitud a la función.

  3. Cuando la función se ejecuta en Azure y devuelve una respuesta, se genera una notificación en Visual Studio Code.

Limpieza de recursos

Si va al paso siguiente y agrega un enlace de cola de Azure Storage a una función, tendrá que conservar todos los recursos intactos para basarse en lo que ya ha hecho.

De lo contrario, puede usar los pasos siguientes para eliminar la aplicación de funciones y sus recursos relacionados para evitar incurrir en costos adicionales.

  1. En Visual Studio Code, presione F1 para abrir la paleta de comandos. En la paleta de comandos, busque y seleccione Azure: Open in portal.

  2. Elija una aplicación de funciones y presione la tecla ENTRAR. La página de la aplicación de funciones se abre en Azure Portal.

  3. En la pestaña Información general, seleccione el vínculo con nombre junto a Grupo de recursos.

    Captura de pantalla de la selección del grupo de recursos que se va a eliminar de la página de la aplicación de funciones.

  4. En la página Grupo de recursos, revise la lista de recursos incluidos y compruebe que estos sean los que desea eliminar.

  5. Seleccione Eliminar grupo de recursos y siga las instrucciones.

    El proceso de eliminación tardará un par de minutos. Cuando termine, aparece una notificación durante unos segundos. También puede seleccionar el icono de campana en la parte superior de la página para ver la notificación.

Para más información sobre los costos de Functions, consulte Estimación de los costos según el plan de consumo.

Pasos siguientes

Ha usado Visual Studio Code para crear una aplicación de función con una función simple desencadenada por HTTP. En el siguiente artículo, ampliará esa función mediante la conexión a uno de los servicios principales de Azure Storage. Para más información sobre cómo conectarse a otros servicios de Azure, consulte Incorporación de enlaces a una función existente de Azure Functions.