Conexión a servicios de Azure, gRPC, OpenAPI y mucho más
Los desarrolladores están creando aplicaciones con un número cada vez mayor de servicios, pero las tecnologías de servicio evolucionan igual de rápido.
Con los Servicios conectados de Visual Studio puede conseguir una moderna experiencia de consumo de servicios que permite a cada servicio la capacidad de adaptar su experiencia de consumo, solicitándole las preguntas más importantes que necesita para empezar rápidamente.
Servicios conectados incluye una colección de herramientas en Visual Studio que le ayudan a conectar la aplicación a lo siguiente:
- servicios de Azure
- Puntos de conexión de OpenAPI
- Puntos de conexión gRPC (llamada a procedimiento remoto)
- Puntos de conexión de Windows Communication Foundation (WCF)
- Bases de datos y proveedores de datos
Para comenzar, haga clic con el botón derecho en el nodo Servicios conectados dentro de Explorador de soluciones y seleccione Administrar servicios conectados.
Para empezar, haga clic con el botón derecho en el nodo y escoja Agregar > Servicio conectado. También puede hacer clic con el botón derecho en el nodo Servicios Conectados en Explorador de soluciones y elegir un servicio específico para agregar.
Los tipos de proyecto admitidos varían según el tipo de servicio. Verá las opciones que se aplican al tipo de proyecto en las selecciones enumeradas.
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.
Conexión de la aplicación a servicios de Azure
Use servicios conectados para conectar la aplicación a emuladores de servicios de Azure dinámicos y otras alternativas locales a los servicios de Azure. Visual Studio admite actualmente lo siguiente:
Nombre | Descripción |
---|---|
Azure App Configuration | Acceda a la configuración de clave-valor y a las marcas de características que se administran de forma centralizada en Azure. |
Azure App Insights | Proporciona administración y supervisión extensibles del rendimiento de las aplicaciones web en directo. |
Azure App Service | Proporciona hospedaje completo y escalable de aplicaciones web activas. |
Funciones de Azure | Proporciona servicios escalables de proceso a petición para las API web y mucho más. |
Almacenamiento de Azure | Almacenamiento en la nube escalable compatible con blobs, tablas, colas y discos. |
Servicio Azure SignalR | Funcionalidad web en tiempo real a través de HTTP. |
Azure Key Vault | Proteja el almacenamiento en la nube para las claves criptográficas y otros secretos que usan las aplicaciones de Azure. |
Azure SQL Database | Base de datos SQL hospedada en la nube. |
Azure Cache for Redis | Almacén de datos en memoria basado en el software de Redis. |
Azure Cosmos DB | Una base de datos NoSQL totalmente administrada para el desarrollo de aplicaciones modernas. |
Plataforma de identidad de Microsoft | Autenticación con identidades de Microsoft y cuentas sociales. |
Nota
Con Publicar, puede implementar la aplicación en servicios de hospedaje de Azure, como máquinas virtuales de Azure, Azure App Service, Azure Functions y Azure Container Registry.
Bases de datos y proveedores de datos
Visual Studio proporciona opciones para conectarse a bases de datos locales, versiones emuladas localmente de proveedores de datos, así como servicios de base de datos de Azure.
Nombre | Descripción |
---|---|
Azure Cosmos DB Emulator en contenedor | Emulador de Azure Cosmos DB que se ejecuta en un contenedor local. |
MongoDB en contenedor | Las bases de datos de documentos de MongoDB proporcionan alta confiabilidad y escalabilidad sencilla. Esta opción hace que esté disponible en un contenedor local. |
PostgreSQL en el contenedor | PostgreSQL es un sistema de base de datos relacional de objetos que proporciona confiabilidad e integridad de datos. Esta opción hace que esté disponible en un contenedor local. |
SQLite | SQLite es una biblioteca en proceso que proporciona un motor de base de datos de SQL Server independiente y transaccional sin ninguna configuración. |
Base de datos de SQL Server | Base de datos de SQL Server local. |
Compatibilidad con emuladores de Azure y alternativas locales
Visual Studio facilita el desarrollo local de aplicaciones de Azure al facilitar la transición de servicios emulados localmente a servicios que se ejecutan en la nube. Puede usar Servicios conectados para conectar la aplicación a emuladores locales, algunos de los cuales se ejecutan en un contenedor local y otras alternativas locales a los servicios de Azure. Visual Studio admite actualmente lo siguiente:
Visual Studio genera cualquier código de cliente o servidor necesario para facilitar la comunicación.
Nombre | Descripción |
---|---|
Emulador de Azure Cosmos DB en contenedor | Emulador de Azure Cosmos DB que se ejecuta en un contenedor local. |
Emulador de Azure Storage | Azurite es un emulador de Azure Storage que se ejecuta en el equipo local. |
SDK de Application Insights | Modo local para el servicio Application Insights. |
RabbitMQ en contenedor | RabbitMQ es un agente de mensajes multiprotocolo de código abierto. Esta opción hace que esté disponible en un contenedor local. |
Azure Cache for Redis en contenedor | Azure Cache for Redis hospedado en un contenedor local. |
Secrets.json | Alternativa local para Key Vault. |
SQL Server Express LocalDB | Alternativa local a Azure SQL Database. |
Conexión de la aplicación a puntos de conexión gRPC, OpenAPI y WCF
Use servicios conectados para conectar la aplicación a cualquiera de los siguientes servicios:
Nombre | Vínculo de ASP.NET | Descripción |
---|---|---|
Puntos de conexión de OpenAPI | Compatibilidad con OpenAPI en aplicaciones ASP.NET Core API | Un formato estándar para describir las capacidades de un servicio en un formato legible por computadora y por humanos. |
Puntos de conexión gRPC | Introducción a los servicios gRPC en .NET | Procedimiento en tiempo real de código abierto que llama al servicio. |
Puntos de conexión en WCF | N/A | Una solución de .NET Framework que admite la programación con una red distribuida de servicios. |
Contenedores
Los servicios conectados pueden ayudarle a ejecutar dependencias de aplicaciones que emulan los servicios de Azure localmente en un contenedor. Por ejemplo, puede ejecutar el emulador de Azure Storage denominado Azurite en un contenedor localmente. En la sección siguiente se describe qué compatibilidad proporciona Visual Studio para realizar la transición de la aplicación desde el modo de desarrollo, cuando se usan estos servicios ficticios en contenedores, para usar los servicios reales que se ejecutan en Azure.
Configuraciones locales y conectadas
Durante el desarrollo, normalmente se usa un emulador local, una base de datos local o un servicio ficticio que se ejecuta en un contenedor local. Al usar el proceso de publicación en Visual Studio para implementar en la nube, ya sea Azure, Docker Hub u otro entorno remoto compatible, Visual Studio puede guiarle a través de la transición a la conexión a los servicios y bases de datos reales. Al hacer clic con el botón derecho en el nodo del proyecto en explorador de soluciones y elegir Publicar, se le guiará a través de la implementación de la aplicación en la nube, pero después de eso, las dependencias de servicio configuradas anteriormente para uso local se muestran ahora en la interfaz de usuario de servicios conectados con un icono de precaución amarillo y un vínculo Configurar:
Si hace clic en esos vínculos, Visual Studio presentará algunas pantallas que solicitan la información de conexión al servicio "real" que se ejecuta en la nube que usará la aplicación en la nube en lugar del servicio local. Por ejemplo, si inicialmente configuró una aplicación para que se ejecute con una instancia en ejecución local de SQL LocalDB, habría proporcionado un nombre de cadena de conexión y un valor inicial al que se hacía referencia a esa base de datos localDB. Una vez que la aplicación se implemente por primera vez en un entorno de nube, puede usar los vínculos Configurar para especificar la cadena de conexión que se usará en la nube. En escenarios de implementación de Azure, Visual Studio también ofrece la opción de usar una Azure Key Vault para almacenar de forma segura la cadena de conexión y otros secretos.
Cómo funciona
Visual Studio crea dos archivos nuevos visibles en el Explorador de soluciones en Propiedades llamadas serviceDependencies.json y serviceDependencies.local.json. Ambos archivos son seguros para su inserción en el repositorio, ya que no contienen secretos.
Visual Studio también crea un archivo denominado serviceDependencies.local.json.user que no está visible en el Explorador de soluciones de forma predeterminada. Este archivo contiene información que podría considerarse un secreto (por ejemplo, identificadores de recursos en Azure) y no se recomienda que lo inserte en el repositorio.