Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Con Visual Studio è possibile connettere una delle opzioni seguenti ad Azure Cosmos DB usando la funzionalità Servizi connessi:
- App .NET Framework console
- ASP.NET Model-View-Controller (MVC) (.NET Framework)
- ASP.NET Core
- .NET Core (inclusa l'app console, WPF, Windows Form, libreria di classi)
- Ruolo di lavoro .NET Core
- Funzioni di Azure
- App UWP (Piattaforma Universale Windows)
- Cordova
La funzionalità del servizio connesso aggiunge tutti i riferimenti e il codice di connessione necessari al progetto e modifica i file di configurazione in modo appropriato.
Prerequisiti
- Visual Studio con il carico di lavoro di Azure installato.
- Progetto di uno dei tipi supportati
- Un account Azure. Se non hai un account Azure, attiva i vantaggi di Azure per gli abbonati di Visual Studio o registrati per una prova gratuita.
Connettersi ad Azure Cosmos DB con i servizi connessi
Aprire il progetto in Visual Studio.
In Esplora Soluzioni, fare clic con il pulsante destro del mouse sul nodo Servizi Connessi e scegliere Aggiungi Servizio Connessodal menu di scelta rapida.
Se il nodo Servizi connessi non viene visualizzato, scegliere Progetto>Servizi connessi>Aggiungi.
Nella scheda Servizi Connessi, selezionare l'icona + per Dipendenze del Servizio.
Nella pagina Aggiungi dipendenza, selezionare Azure Cosmos DB.
Se non hai già effettuato l'accesso, esegui l'accesso al tuo account Azure. Se non si ha un account Azure, è possibile iscriversi per ottenere una versione di valutazione gratuita .
Nella schermata Azure Cosmos DB, selezionare un'istanza esistente di Azure Cosmos DB e quindi fare clic su Avanti.
Se è necessario creare un database, andare al passaggio successivo. Altrimenti, vai al passaggio 7.
Per creare un database di Azure Cosmos DB:
Selezionare Crea un nuovo Azure Cosmos DB in fondo allo schermo.
Compilare la schermata Azure Cosmos DB: Creare nuova e selezionare Crea.
Quando viene visualizzata la finestra di dialogo Configura Azure Cosmos DB, viene visualizzato il nuovo database nell'elenco. Selezionare il nuovo database nell'elenco e selezionare Avanti.
Immettere un nome di stringa di connessione e scegliere se si vuole archiviare la stringa di connessione in un file di segreti locale o in Azure Key Vault.
La schermata Riepilogo delle modifiche mostra tutte le modifiche che verranno apportate al progetto se si completa il processo. Se le modifiche sono ok, scegliere Fine.
La connessione appare nella sezione dipendenze del servizio della scheda Servizi connessi.
Nota
Per i progetti .NET Framework, l'interfaccia utente di Servizi connessi è leggermente diversa. Per visualizzare le differenze, confrontare con la versione di Visual Studio 2019 di questa pagina.
Aprire il progetto in Visual Studio.
In Esplora Soluzioni, fare clic con il pulsante destro del mouse sul nodo Servizi Connessi e dal menu di scelta rapida, scegliere Aggiungi per aprire il menu dei servizi disponibili.
Se il nodo Servizi connessi non viene visualizzato, scegliere Progetto>Servizi connessi>Aggiungi.
Scegliere Azure Cosmos DB. Viene visualizzata la pagina Connetti alla dipendenza. Verranno visualizzate due opzioni, una per un emulatore locale, emulatore di Azure Cosmos DB nel contenitore (locale)e una per la connessione al servizio Azure Cosmos DB attivo. È possibile ridurre i costi e semplificare lo sviluppo anticipato iniziando con l'emulatore locale. È possibile eseguire la migrazione al servizio attivo in un secondo momento ripetendo questi passaggi e scegliendo l'altra opzione.
Se si sceglie di usare l'emulatore di Azure Cosmos DB, fare clic su Avanti per visualizzare la schermata Riepilogo delle modifiche , che mostra come viene modificato il progetto. Al progetto viene aggiunto un riferimento al pacchetto NuGet e il codice di connessione per l'emulatore locale viene aggiunto al progetto. Dopo aver fatto clic su Fine nell'ultima schermata, viene creato il contenitore per l'emulatore; verrà visualizzato lo stato di download dell'immagine nella finestra di output.
Se si vuole connettersi al servizio di Azure, continuare con il passaggio successivo o, se non si è già connessi, accedere all'account Azure prima di continuare. Se non si ha un account Azure, è possibile iscriversi per ottenere una versione di valutazione gratuita .
Nella schermata Azure Cosmos DB selezionare un'istanza esistente di Azure Cosmos DB e selezionare Avanti.
Se è necessario creare un database, andare al passaggio successivo. Altrimenti, vai al passaggio 7.
Per creare un database di Azure Cosmos DB:
Selezionare Crea un nuovo Azure Cosmos DB in fondo allo schermo.
Compilare la schermata Azure Cosmos DB: Creare nuova e selezionare Crea.
Quando viene visualizzata la finestra di dialogo Configura Azure Cosmos DB, viene visualizzato il nuovo database nell'elenco. Selezionare il nuovo database nell'elenco e selezionare Avanti.
Immettere un nome di stringa di connessione e scegliere se si vuole archiviare la stringa di connessione in un file di segreti locale o in Azure Key Vault.
La stringa di connessione viene aggiunta come segreto e resa disponibile nella configurazione dell'app. Nelle app ASP.NET Core è possibile accedere a questa stringa di connessione usando la proprietà
Configuration
nell'oggettoWebApplicationBuild
.La schermata Riepilogo delle modifiche mostra tutte le modifiche che verranno apportate al progetto se si completa il processo. Se le modifiche sono ok, scegliere Fine.
In Esplora soluzioni, fare doppio clic sul nodo Servizi connessi per aprire la scheda Servizi connessi. La connessione viene visualizzata nella sezione Dipendenze del servizio:
Se si fa clic sui tre puntini accanto alla dipendenza aggiunta, è possibile visualizzare varie opzioni, ad esempio Connetti per riaprire la procedura guidata e modificare la connessione. È anche possibile fare clic sui tre puntini in alto a destra della finestra per visualizzare le opzioni per avviare dipendenze locali, modificare le impostazioni e altro ancora.
Per impostazione predefinita, il limite di memoria nel contenitore è impostato su 2G, ma in genere è necessaria una quantità di memoria maggiore per l'esecuzione di Azure Cosmos DB. Per risolvere il problema, passare alla cartella
.vs/sd/<GUID>/local
nella cartella della soluzione. In Esplora file, si potrebbe dover abilitare i file nascosti per visualizzare la cartella.vs
. Trovare e aprire il file cosmosdb1.docker-compose.yml. Impostare un limite di memoria 4G o superiore.mem_limit = 4G
Per riavviare il contenitore con la nuova impostazione, nella sezione dipendenze del servizio della scheda Servizi connessi fare clic sui tre puntini e scegliere Avvia dipendenze locali.
Nota
L'emulatore locale per Azure Cosmos DB potrebbe fare riferimento a un'immagine di base che usa una licenza temporanea per Azure Cosmos DB. Se il contenitore non viene avviato, controllare la scheda Log nella finestra Containers* per il contenitore di Azure Cosmos DB. Se viene menzionato un problema di scadenza PAL, devi ottenere l'immagine di base più recente del contenitore locale. Eseguire il comando seguente dal prompt della console: docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
. La licenza viene aggiornata periodicamente e, alla scadenza, l'aggiornamento al contenitore più recente deve risolvere il problema. È possibile visualizzare e segnalare problemi per l'emulatore di Azure Cosmos DB nel repository GitHub dell'emulatore di Azure Cosmos DB .
Passaggi successivi
Informazioni su come archiviare i segreti in modo sicuro seguendo archiviazione sicura dei segreti delle app in fase di sviluppo in ASP.NET Core. In particolare, per leggere la stringa di connessione dall'archivio segreti, è possibile aggiungere codice come in Leggere il segreto tramite l'API di configurazione. Il codice potrebbe essere simile al seguente, dove builder
è un'istanza di WebApplicationBuild
visualizzata in Program.cs nei modelli di progetto ASP.NET Core:
// New instance of CosmosClient class using a connection string
using CosmosClient client = new(
connectionString: builder.Configuration["CosmosDBConnectionString"]
);
Il CosmosClient
fornisce l'accesso alle funzionalità di Azure Cosmos DB tramite i vari metodi. Dopo aver creato un'istanza di CosmosClient
, è possibile creare un database NoSQL seguendo questa guida: Creare un database in Azure Cosmos DB per NoSQL usando .NET.