Condividi tramite


Connettersi a servizi di Azure, gRPC, OpenAPI e altro ancora

Gli sviluppatori creano app con un numero crescente di servizi, ma le tecnologie del servizio si stanno evolvendo altrettanto velocemente.

Con l'Servizi Connessi di Visual Studio, si ottiene un'esperienza di utilizzo dei servizi moderna che consente a ogni servizio di adattare l'esperienza di fruizione, ponendo le domande pertinenti necessarie per iniziare rapidamente.

Servizi connessi include una raccolta di strumenti in Visual Studio che consentono di connettere l'applicazione agli elementi seguenti:

  • Servizi di Azure
  • Endpoint OpenAPI
  • gRPC (Chiamata di Procedura Remota) endpoint
  • Endpoint di Windows Communication Foundation (WCF)
  • Database e provider di dati

Per iniziare, fare clic con il pulsante destro del mouse sul nodo Servizi connessi in Esplora soluzioni e selezionare Gestisci servizi connessi.

Per iniziare, fare clic con il pulsante destro del mouse sul nodo del progetto e scegliere Aggiungi > servizio connesso. È anche possibile fare clic con il pulsante destro del mouse sul nodo Servizi connessi in Esplora Soluzioni e scegliere un servizio specifico da aggiungere.

I tipi di progetto supportati variano in base al tipo di servizio. Nelle selezioni elencate verranno visualizzate le opzioni applicabili al tipo di progetto.

Molte sottoscrizioni di Visual Studio includono crediti di sviluppo/test individuali di Azure. Se si è un sottoscrittore di Visual Studio, è possibile usare questi crediti per provare diversi servizi di Azure senza costi. Se non si è sottoscrittori e non si ha una sottoscrizione di Azure, è possibile creare un account gratuito.

Connettere l'app ai servizi di Azure

Usare Servizi connessi per connettere l'applicazione a emulatori di servizi di Azure in tempo reale e ad altre alternative locali ai servizi di Azure. Visual Studio supporta attualmente quanto segue:

Nome Descrizione
Configurazione App di Azure Accedere alle impostazioni chiave-valore e ai flag di funzionalità gestiti centralmente in Azure.
Azure App Insights Fornisce la gestione estendibile delle prestazioni delle applicazioni e il monitoraggio per le app Web in tempo reale.
Azure App Service Fornisce l'hosting completo e scalabile di app Web live.
funzioni di Azure Fornisce servizi di calcolo scalabili su richiesta per le API Web e altro ancora.
Archiviazione di Azure Archiviazione cloud scalabile con supporto per BLOB, tabelle, code, dischi.
Servizio Azure SignalR Funzionalità Web in tempo reale su HTTP.
Azure Key Vault Proteggere l'archiviazione cloud per le chiavi crittografiche e altri segreti usati dalle applicazioni Azure.
database SQL di Azure Database SQL ospitato nel cloud.
cache di Azure per Redis Archivio dati in memoria basato sul software Redis.
Azure Cosmos DB Un database NoSQL completamente gestito per lo sviluppo di app moderne.
Microsoft Identity Platform Autenticazione con identità Microsoft e account di social networking.

Nota

Usando Publish è possibile distribuire l'applicazione in servizi di hosting di Azure come macchine virtuali di Azure, servizio app di Azure, Funzioni di Azure e Registro Azure Container

Database e provider di dati

Visual Studio offre opzioni per connettersi ai database locali, alle versioni emulate in locale dei provider di dati e ai servizi di database di Azure.

Nome Descrizione
Emulatore di Azure Cosmos DB su container Emulatore di Azure Cosmos DB in esecuzione in un contenitore locale.
MongoDB su container I database di documenti mongoDB offrono affidabilità elevata e scalabilità semplificata. Questa opzione lo rende disponibile in un contenitore locale.
PostgreSQL nel contenitore PostgreSQL è un sistema di database relazionale a oggetti che fornisce affidabilità e integrità dei dati. Questa opzione lo rende disponibile in un contenitore locale.
SQLite SQLite è una libreria che opera in processo e fornisce un motore di database SQL autonomo senza alcuna configurazione.
del database SQL Server Database di SQL Server locale.

Supporto per emulatori di Azure e alternative locali

Visual Studio semplifica lo sviluppo di applicazioni Azure in locale semplificando la transizione dai servizi emulati in locale ai servizi in esecuzione nel cloud. È possibile usare Servizi connessi per connettere l'applicazione a emulatori locali, alcuni dei quali eseguiti in un contenitore locale e altre alternative locali ai servizi di Azure. Visual Studio supporta attualmente quanto segue:

Visual Studio genera qualsiasi codice client o server necessario per facilitare la comunicazione.

Nome Descrizione
emulatore di Azure Cosmos DB nell' del contenitore Emulatore di Azure Cosmos DB in esecuzione in un contenitore locale.
Emulatore di Archiviazione Azure Azurite è un emulatore di Archiviazione di Azure eseguito nel computer locale.
Application Insights SDK Modalità locale per il servizio Application Insights.
RabbitMQ nel contenitore RabbitMQ è un broker di messaggi multiprotocol open source. Questa opzione lo rende disponibile in un contenitore locale.
Azure Cache per Redis su container Cache Redis di Azure ospitata in un contenitore locale.
Secrets.json Alternativa locale per Key Vault.
SQL Server Express LocalDB Alternativa locale al database SQL di Azure.

Connettere l'app agli endpoint gRPC, OpenAPI e WCF

Usare Servizi connessi per connettere l'applicazione a uno dei servizi seguenti:

Nome collegamento ASP.NET Descrizione
OpenAPI endpoint supporto openAPI nelle app per le API di base ASP.NET Formato standard per descrivere le funzionalità di un servizio in formato leggibile e leggibile dal computer.
endpoint di gRPC Introduzione ai servizi gRPC in .NET Servizio di chiamata di procedura in tempo reale open-source.
endpoint WCF N/D Soluzione .NET Framework che supporta la programmazione con una rete distribuita di servizi.

Contenitori

I servizi connessi consentono di eseguire dipendenze dell'applicazione che emulano i servizi di Azure in locale in un contenitore. Ad esempio, è possibile eseguire l'emulatore di Archiviazione di Azure denominato Azurite in un contenitore in locale. La sezione successiva descrive il supporto fornito da Visual Studio per la transizione dell'app dalla modalità di sviluppo, quando si usano questi servizi fittizi nei contenitori, all'uso dei servizi reali in esecuzione in Azure.

Configurazioni locali e connesse

Durante lo sviluppo, in genere si usa un emulatore locale, un database locale o un servizio fittizio in esecuzione in un contenitore locale. Quando si usa il processo di pubblicazione in Visual Studio per eseguire la distribuzione nel cloud, ad esempio Azure, Hub Docker o un altro ambiente remoto supportato, Visual Studio può guidare la transizione alla connessione ai servizi e ai database reali. Quando si fa clic con il pulsante destro del mouse sul nodo del progetto in Esplora soluzioni e si sceglie Pubblica, si viene guidati tramite la distribuzione dell'app nel cloud, ma in seguito le dipendenze del servizio configurate in precedenza per l'uso locale sono ora visualizzate nell'interfaccia utente di Servizi connessi con un'icona di attenzione gialla e un collegamento Configura :

Screenshot che mostra l'opzione Configura nella scheda Servizi connessi.

Se si fa clic su questi collegamenti, Visual Studio presenterà alcune schermate che richiedono le informazioni di connessione al servizio "reale" in esecuzione nel cloud che verrà usata dall'app cloud anziché dal servizio locale. Ad esempio, se è stata inizialmente configurata un'app per l'esecuzione con un'istanza in esecuzione locale di SQL LocalDB, è stato specificato un nome di stringa di connessione e un valore iniziale a cui si fa riferimento al database LocalDB. Dopo la prima distribuzione dell'app in un ambiente cloud, è possibile usare i collegamenti Configura per specificare la stringa di connessione da usare nel cloud. Per gli scenari di distribuzione di Azure, Visual Studio offre anche la possibilità di usare un azure Key Vault per archiviare in modo sicuro la stringa di connessione e altri segreti.

Screenshot che mostra le opzioni presentate per sostituire il servizio SQL LocalDB con una connessione al database reale.

Come funziona

Visual Studio crea due nuovi file visibili in Esplora Soluzioni in Proprietà denominate serviceDependencies.json e serviceDependencies.local.json. Entrambi questi file sono sicuri da archiviare perché non contengono segreti.

Visual Studio crea anche un file denominato serviceDependencies.local.json.user che non è visibile in Esplora soluzioni per impostazione predefinita. Questo file contiene informazioni che potrebbero essere considerate un segreto (ad esempio, ID risorsa in Azure) e sconsigliamo di archiviarlo.