Desarrollo de Azure con Visual Studio
El desarrollo de aplicaciones puede ser más fácil si usa servicios en la nube para controlar muchos problemas que, de lo contrario, tendría que implementar. Cuando se usan servicios en la nube en la nube de Azure, se usa un entorno de nube confiable y de alta disponibilidad administrado por Microsoft para controlar gran parte de la infraestructura que necesitan muchas aplicaciones y servicios, de modo que pueda centrar los esfuerzos de desarrollo en lo que es único para la aplicación.
En este artículo, aprenderá cómo Visual Studio puede ayudarle con el desarrollo en Azure, ya sea poniendo en marcha un sitio web, conectándose a servicios como almacenamiento, bases de datos, gestión de secretos, o utilizando servicios que agregan valor, como el almacenamiento en caché.
Muchas suscripciones a Visual Studio incluyen créditos individuales de Desarrollo/pruebas Azure Dev/Test. Si es suscriptor de Visual Studio, puede usar estos créditos para probar varios servicios de Azure sin costo alguno. Si no es suscriptor y no tiene una suscripción de Azure, puede crear una cuenta gratuita.
Puede hospedar las aplicaciones web en Azure y escalar horizontalmente dinámicamente para atender un mayor número de usuarios simultáneos, en lugar de sobrecargar una infraestructura limitada. El hospedaje en Azure permite usar el ecosistema enriquecido de servicios que proporciona la plataforma Azure. Las aplicaciones se pueden administrar con más facilidad mediante servicios enriquecidos como App Service o para aplicaciones en contenedores, Azure Container Apps.
En el caso de las aplicaciones locales, puede asociarse a Azure para obtener las ventajas de algunos servicios específicos de Azure, como el almacenamiento de blobs, las bases de datos hospedadas en Azure, la supervisión a través de App Insights, la administración de identidades y mucho más.
Visual Studio tiene muchas funcionalidades que pueden facilitar el desarrollo de aplicaciones que se conectan a los servicios de Azure o que se implementan en Azure y se hospedan en la nube de Azure. Visual Studio proporciona mecanismos para facilitar la conexión a los servicios durante la fase de desarrollo inicial, así como facilitar la publicación o implementación de una aplicación en Azure y, además, puede conectarse a la aplicación de Azure con el depurador de Visual Studio en la máquina local, lo que facilita la experiencia de depuración para las aplicaciones en la nube, lo que facilita la depuración local.
Tecnologías y lenguajes admitidos
Con Visual Studio, puede desarrollar aplicaciones que se ejecutan en la nube de Azure y conectarse a los servicios de Azure desde las aplicaciones locales, de escritorio y móviles. Visual Studio es el entorno más completo y completo para que los desarrolladores de Windows conecten aplicaciones .NET y ASP.NET a los servicios de Azure. Visual Studio también admite el desarrollo en otras pilas tecnológicas, como Node.js y Python, que puede usar para crear sitios web y aplicaciones web que puede implementar en Azure mediante la CLI de Azure.
Los desarrolladores de C++ pueden acceder a servicios de Azure como Azure Storage mediante una biblioteca cliente de C++ y los desarrolladores de dispositivos IoT que usan C y C++ pueden conectar dispositivos y servicios a Azure. Consulte Programación en la nube y web en Visual C++.
Los usuarios de Azure Cloud Services, compatibles con Visual Studio para muchas versiones anteriores, pueden seguir trabajando con estos servicios en Visual Studio mediante Azure Cloud Services (soporte extendido).
Conexión a servicios de Azure
Cuando desea usar un servicio de Azure en la aplicación, normalmente requiere varios cambios en el proyecto, como referencias de paquete, cambios de código y cambios de configuración, así como muchos cambios en Azure para especificar los servicios a los que conectarse o crearlos si aún no existen. Visual Studio ayuda a facilitar este proceso mediante la realización de esos cambios en el proyecto y en Azure, en función de la información que proporcione. Visual Studio también proporciona una lista de todos los cambios, por lo que puede examinarlos y comprender completamente lo que ha cambiado.
Visual Studio Connected Services es el nombre de los asistentes paso a paso que puede usar para conectar los proyectos (web y locales) a los servicios de Azure. Obtenga más información sobre los servicios de Azure a los que puede conectarse y administrar desde Visual Studio en Acerca de los servicios conectados de Visual Studio.
Puede realizar todas las operaciones de Azure necesarias directamente desde el IDE de Visual Studio a medida que pasa por los asistentes de servicios conectados. En lugar de usar el Azure Portal, puede aprovisionar recursos en Azure, crear grupos de recursos, examinar y ver los recursos de Azure e implementar las aplicaciones y los servicios. Una vez que el proyecto está conectado a los servicios de Azure o implementados, la pestaña Connected Services muestra información sobre los recursos y contiene vínculos cómodos a las implementaciones. Vea Trabajar con Azure en Visual Studio.
Implementación de aplicaciones en la nube de Azure
Con Visual Studio puede implementar la aplicación en Azure, a petición, con el clic de un botón. Esta comodidad es excelente durante el desarrollo y las pruebas, donde es posible que CI/CD no esté ya configurado. CI/CD (integración continua y entrega continua (CI/CD)) es un sistema en el que los cambios locales realizados en el código de aplicación por los equipos de desarrollo se integran automáticamente en la aplicación implementada que se ejecuta en Azure, sin interrumpir el servicio implementado. Puede usar Azure Pipelines o GitHub Actions para configurar esto.
¿Qué va a implementar?
Destino de implementación | Documentación |
---|---|
Azure App Service (.NET Core) | Implementación de una aplicación web de ASP.NET Core |
Azure App Service (.NET Framework) | Implementación de una aplicación web de ASP.NET (.NET Framework) |
Azure Container Apps | Implementación en Azure Container Apps mediante Visual Studio |
Azure Functions | Creación de la primera función de C# en Azure mediante Visual Studio |
Azure Container Registry | Implementación de un contenedor de ASP.NET en un registro de contenedor mediante Visual Studio |
Si necesita ayuda para configurar CI/CD para un repositorio de GitHub por primera vez, Visual Studio puede ayudarle a empezar a trabajar con flujos de trabajo de inicio de acciones de GitHub. Obtenga más información en Implementación de la aplicación en Azure mediante flujos de trabajo de Acciones de GitHub creados por Visual Studio. Obtenga más información sobre cómo configurar CI/CD para la implementación en Azure en Implementación continua en Azure App Service.
.NET Aspire
.NET Aspire proporciona infraestructura para orquestar servicios y componentes de aplicaciones observables basadas en la nube. Las aplicaciones observables son aquellas configuradas para ser supervisadas exhaustivamente en tiempo real durante su ejecución. .NET Aspire es especialmente relevante durante el tiempo de desarrollo como medio para organizar y coordinar varios servicios, bases de datos y otras dependencias.
Visual Studio 17.9 y versiones posteriores, con las cargas de trabajo de ASP.NET y el desarrollo web y desarrollo de Azure instaladas, incluye el SDK de .NET Aspire y proporciona plantillas de proyecto para .NET Aspire.
Proyectos de ASP.NET Core incluyen una opción para inscribirse en la orquestación Aspire al crear el proyecto y un elemento en el menú contextual, Agregar>NET Aspire Orchestrator Support en el Explorador de soluciones que puede usar para integrar un proyecto en la orquestación Aspire. Estas acciones agregan proyectos de orquestación Aspire (AppHost y ServiceDefaults) a la solución (a menos que ya esté presente). En Visual Studio 17.13 y versiones posteriores, esta funcionalidad también se admite para proyectos de Azure Functions. Para obtener información más detallada, consulte las herramientas de .NET Aspire .
Depuración en Azure mediante Visual Studio
Puede usar Visual Studio para depurar la aplicación mientras se ejecuta en Azure, de modo que pueda identificar y reproducir problemas en un entorno lo más cercano posible a un entorno de producción. Para las aplicaciones web hospedadas en Azure App Service, consulte Depuración remota de ASP.NET Core en Azure App Service. Para Azure Functions, consulte Desarrollo de Azure Functions con Visual Studio: depuración remota.
Si usa una máquina virtual (VM) para hospedar una aplicación web de ASP.NET Core, consulte Depuración remota ASP.NET Core en Internet Information Services (IIS) mediante una máquina virtual de Azure desde Visual Studio.
Uso de características integradas de Azure
Al ejecutarse en la nube de Azure, las aplicaciones pueden beneficiarse de los estándares de Azure para alta disponibilidad, las capacidades de escalar verticalmente y escalar horizontalmente, supervisión, pruebas de cargay otras ventajas. Visual Studio se integra con la funcionalidad de Azure, como Depuración remota, ver registros y mucho más.
Ahorra dinero con soporte de emulación local
Durante la fase de desarrollo, puede experimentar y desarrollar con emuladores locales de servicios de Azure para mayor comodidad y ahorro de costos y, posteriormente, implementarlos en Azure. Puede encontrar más información en Configuraciones locales y conectadas.
Compatibilidad con Docker
También puede trabajar con Docker para incluir en contenedores las aplicaciones y los servicios. El uso de contenedores de Docker proporciona un sistema operativo y un entorno coherentes y reproducibles para una aplicación en ejecución. Visual Studio proporciona la misma experiencia familiar al depurar contenedores, le ayuda a supervisar y administrar el ciclo de vida de los contenedores localmente y puede implementar los contenedores en un registro de contenedores.
Una vez que haya contenedorizado la aplicación, es fácil implementar los contenedores en Azure mediante servicios como Azure App Service o Azure Container Apps.
Conexión de aplicaciones a Azure Storage y servicios de base de datos
La administración de archivos y datos puede ser mucho más fácil con Azure Storage, que es un almacenamiento de alta disponibilidad, escalable, duradero y seguro para una variedad de objetos de datos en la nube. Puede usar Azure Storage para almacenar todo y ponerlo a disposición de los sitios web, las aplicaciones de escritorio o las aplicaciones móviles.
Azure también proporciona muchos servicios de datos diferentes adecuados a diferentes necesidades, desde una instancia de SQL Database hospedada en la nube que facilita la transición de una instancia local de SQL Server a soluciones de macrodatos que se pueden escalar verticalmente a los requisitos más grandes.
Conexión a Azure Storage
- Almacenamiento y recuperación de un blob
- Administrar archivos
- Implementación de mensajería mediante colas
- Administración de datos NoSQL estructurados
Obtenga más información en Azure Storage y aprenda a conectarse a Azure Storage con Visual Studio.
Conexión a bases de datos
Conectarse a Azure SQL Database y otras ofertas de bases de datos de Azure, como Azure Cosmos DB, es tan fácil como conectarse a un SQL Serverlocal. Para obtener más información, consulte Bases de datos y proveedores de datos.
Conexión a servicios web y de datos
Los proveedores de datos están haciendo que los servicios estén disponibles a través de protocolos estándar, como Open Data Protocol (OData) y gRPC. Puede conectarse a estos servicios o, si va a crear servicios web usted mismo, puede elegir ASP.NET API web, Azure Functions o Azure API Management y agregar esas conexiones. Para obtener una lista de los servicios y protocolos admitidos y cómo conectarse a ellos, consulte Conexión de la aplicación a puntos de conexión gRPC, OpenAPI y WCF.
aplicaciones web de ASP.NET
Consulte nuestra introducción para desarrollar aplicaciones web de ASP.NET para Azure en Visual Studio.
Otras tecnologías de aplicaciones web
Los desarrolladores que usan JavaScript y Python pueden usar Visual Studio o visual Studio Code para el desarrollo de Azure. Con cualquiera de los entornos de desarrollo, instale la CLI de Azure y siga los tutoriales de la documentación de la CLI de Azure y busque inicios rápidos y tutoriales en la documentación de cada servicio de Azure que le ayude a agregar manualmente el código de conexión.
Node.js ofrece otra opción para el desarrollo de aplicaciones web con JavaScript del lado servidor. Encuentre más información en ¿Qué es Azure para desarrolladores de JavaScript?y empiece a trabajar con Implementación de una aplicación web de Node.js en Azure.
Python es un lenguaje cada vez más popular que, al usar marcos web Django y Flask, es otra forma de desarrollar aplicaciones web. Consulte Introducción a Python en Azure.
Servicios de Azure recomendados
Esta sección puede ayudarle a aprender qué servicios de Azure pueden ser útiles. Empiece por estos inicios rápidos que muestran cómo empezar a trabajar con cada servicio mediante Visual Studio como herramienta de desarrollo. Estos vínculos le llevan a la documentación de cada servicio de Azure, comenzando en una página orientada a los usuarios de Visual Studio (siempre que estén disponibles).
Si no está seguro de qué servicio de Azure podría ajustarse mejor a sus necesidades, pruebe Azure App Service.
Los triggers son eventos que se configuran para ejecutar código cuando se producen ciertas condiciones. Se pueden programar según un temporizador, o bien se pueden configurar para responder a mensajes en una cola, eventos dentro de otros servicios de Azure o enlaces web. Si necesita desencadenadores, pruebe Azure Functions.
Si necesita contenedores sencillos, pruebe Azure Container Apps.
Si necesita contenedores avanzados, pruebe Azure Kubernetes Service.
Si quiere agregar control sobre las API, pruebe Azure API Management.
Si quiere admitir varias conexiones de cliente largas, pruebe Azure SignalR Service.
Si va a desarrollar aplicaciones distribuidas complejas y necesita orquestación entre muchos servicios, pruebe .NET Aspire.
Pasos siguientes
Obtenga más información sobre los servicios de Azure que podrían interesarle en servicios de Azure.
Contenido relacionado
Obtenga consejos de arquitectura para el desarrollo de Azure en Centro de arquitectura de Azure.
Para trabajar en Azure Cloud Services heredado, consulte Azure Cloud Services: soporte extendido.