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 :
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.
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.