Azure Cosmos DB toevoegen aan uw app met behulp van Visual Studio Connected Services
Met Visual Studio kunt u een van de volgende verbindingen maken met Azure Cosmos DB met behulp van de functie Connected Services:
- .NET Framework-console-app
- ASP.NET Model-View-Controller (MVC) (.NET Framework)
- ASP.NET Core
- .NET Core (inclusief console-app, WPF, Windows Forms, klassebibliotheek)
- .NET Core Worker-rol
- Azure Functions
- Universele Windows-platform-app
- Xamarin
- Córdoba
De functionaliteit van de verbonden service voegt alle benodigde verwijzingen en verbindingscode toe aan uw project en wijzigt uw configuratiebestanden op de juiste manier.
Voorwaarden
- Visual Studio waarop de Azure-workload is geïnstalleerd.
- Een project van een van de ondersteunde typen
- Een Azure-account. Heeft u nog geen Azure-account? Activeer dan uw Azure-voordelen voor Visual Studio-abonnees of meldt u zich aan voor een gratis proefversie.
Verbinding maken met Azure Cosmos DB met behulp van verbonden services
Open uw project in Visual Studio.
Klik in Solution Explorermet de rechtermuisknop op het knooppunt Connected Services en selecteer in het contextmenu Verbonden service toevoegen.
Als u het knooppunt Connected Services niet ziet, kiest u Project>Connected Services>Add.
Selecteer op het tabblad Verbonden Services het pictogram + voor Serviceafhankelijkheden.
Selecteer op de pagina Afhankelijkheid toevoegenAzure Cosmos DB.
Als u nog niet bent aangemeld, meldt u zich aan bij uw Azure-account. Als u geen Azure-account hebt, kunt u zich aanmelden voor een gratis proefversie van .
Selecteer in het scherm Azure Cosmos DB een bestaande Azure Cosmos DB en selecteer Volgende.
Als u een database wilt maken, gaat u naar de volgende stap. Ga anders verder met stap 7.
Een Azure Cosmos DB maken:
Selecteer Een nieuwe Azure Cosmos DB- onder aan het scherm maken.
Vul het Azure Cosmos DB: creëer het nieuwe-scherm in en selecteer Maak.
Wanneer het dialoogvenster Azure Cosmos DB configureren wordt weergegeven, wordt de nieuwe database weergegeven in de lijst. Selecteer de nieuwe database in de lijst en selecteer Volgende.
Voer een verbindingsreeksnaam in en kies of u de verbindingsreeks wilt opslaan in een lokaal geheimenbestand of in Azure Key Vault-.
In het scherm Samenvatting van wijzigingen worden alle wijzigingen weergegeven die in uw project worden aangebracht als u het proces voltooit. Als de wijzigingen er OK uitzien, kiest u voltooien.
De verbinding wordt weergegeven onder de sectie Serviceafhankelijkheden van het tabblad Verbonden Services.
Notitie
Voor .NET Framework-projecten is de gebruikersinterface van Connected Services iets anders. Als u de verschillen wilt zien, vergelijkt u de Visual Studio 2019-versie van deze pagina.
Open uw project in Visual Studio.
Klik in Solution Explorermet de rechtermuisknop op het knooppunt Connected Services en selecteer in het contextmenu Toevoegen om het menu met beschikbare services te openen.
Als u het knooppunt Connected Services niet ziet, kiest u Project>Connected Services>Add.
Kies Azure Cosmos DB. De pagina Verbinding maken met afhankelijkheid verschijnt. U ziet twee opties, één voor een lokale emulator, Azure Cosmos DB Emulator op container (lokaal)en een voor het maken van verbinding met de live Azure Cosmos DB-service. U kunt kosten verlagen en vroege ontwikkeling vereenvoudigen door te beginnen met de lokale emulator. U kunt later migreren naar de liveservice door deze stappen te herhalen en de andere optie te kiezen.
Als u ervoor kiest om de Azure Cosmos DB Emulator te gebruiken, klikt u op Volgende om het overzicht van wijzigingen scherm weer te geven, waarin wordt weergegeven hoe uw project wordt gewijzigd. Er wordt een NuGet-pakketreferentie toegevoegd aan uw project en de verbindingscode voor de lokale emulator wordt toegevoegd aan uw project. Zodra u op Voltooien klikt op het laatste scherm, wordt de container voor de emulator aangemaakt; u ziet de downloadstatus van de image in het uitvoervenster.
Als u verbinding wilt maken met de Azure-service, gaat u verder met de volgende stap of als u nog niet bent aangemeld, meldt u zich aan bij uw Azure-account voordat u doorgaat. Als u geen Azure-account hebt, kunt u zich aanmelden voor een gratis proefversie van .
Selecteer in het Azure Cosmos DB-scherm een bestaande Azure Cosmos DB en selecteer Volgende.
Als u een database wilt maken, gaat u naar de volgende stap. Ga anders verder met stap 7.
Een Azure Cosmos DB maken:
Selecteer onder aan het scherm Een nieuwe Azure Cosmos DB maken.
Vul het Azure Cosmos DB in: maak een nieuw scherm en selecteer maken.
Wanneer het dialoogvenster Azure Cosmos DB configureren wordt weergegeven, wordt de nieuwe database weergegeven in de lijst. Selecteer de nieuwe database in de lijst en selecteer Volgende.
Voer een verbindingsreeksnaam in en kies of u de verbindingsreeks wilt opslaan in een lokaal geheimenbestand of in Azure Key Vault-.
De verbindingsreeks wordt toegevoegd als geheim en beschikbaar gemaakt in de app-configuratie. In ASP.NET Core-apps hebt u toegang tot deze verbindingsreeks met behulp van de eigenschap
Configuration
in hetWebApplicationBuild
-object.In het scherm Samenvatting van wijzigingen worden alle wijzigingen weergegeven die in uw project worden aangebracht als u het proces voltooit. Als de wijzigingen er OK uitzien, kiest u voltooien.
Dubbelklik in Solution Explorer op het knooppunt Connected Services om het tabblad Connected Services te openen. De verbinding wordt weergegeven onder de sectie Serviceafhankelijkheden:
Als u op de drie puntjes naast de afhankelijkheid klikt die u hebt toegevoegd, ziet u verschillende opties, zoals Verbinding maken om de wizard opnieuw te openen en de verbinding te wijzigen. U kunt ook op de drie puntjes rechtsboven in het venster klikken om opties weer te geven om lokale afhankelijkheden te starten, instellingen te wijzigen en meer.
Standaard is de geheugenlimiet in de container ingesteld op 2G, maar normaal gesproken is er meer geheugen vereist om Azure Cosmos DB uit te voeren. U kunt dit oplossen door naar de map
.vs/sd/<GUID>/local
onder de oplossingsmap te gaan. In Windows Verkenner moet u mogelijk verborgen bestanden inschakelen om de map.vs
te zien. Zoek en open het bestand cosmosdb1.docker-compose.yml. Stel een 4G- of hogere geheugenlimiet in.mem_limit = 4G
Als u de container opnieuw wilt starten met de nieuwe instelling, klikt u in de sectie Serviceafhankelijkheden van het tabblad Verbonden services op de drie puntjes en kiest u Lokale afhankelijkhedenstarten.
Notitie
De lokale emulator voor Azure Cosmos DB kan verwijzen naar een basisafbeelding die een tijdelijke licentie voor Azure Cosmos DB gebruikt. Als de container niet wordt gestart, controleert u het tabblad Logboeken in het venster Containers* voor de Azure Cosmos DB-container. Als er een PAL-verloopprobleem wordt genoemd, moet u de meest recente basisimage voor de lokale container ophalen. Voer de volgende opdracht uit vanaf de consoleprompt: docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
. De licentie wordt periodiek bijgewerkt en wanneer deze verloopt, moet het vernieuwen naar de nieuwste container het probleem oplossen. U kunt problemen voor de Azure Cosmos DB-emulator bekijken en rapporteren in de GitHub-opslagplaats van Azure Cosmos DB-emulator.
Volgende stappen
Leer hoe je geheimen veilig opslaat door Veilige opslag van app-geheimen tijdens de ontwikkeling in ASP.NET Corete volgen. Als u de verbindingsreeks uit het geheimenarchief wilt lezen, kunt u code toevoegen zoals in Het geheim lezen via de configuratie-API. De code kan er als volgt uitzien, waarbij builder
een exemplaar is van WebApplicationBuild
dat wordt weergegeven in Program.cs in ASP.NET Core-projectsjablonen:
// New instance of CosmosClient class using a connection string
using CosmosClient client = new(
connectionString: builder.Configuration["CosmosDBConnectionString"]
);
De CosmosClient
biedt toegang tot functionaliteit van Azure Cosmos DB via verschillende methoden. Zodra u een exemplaar van CosmosClient
hebt, kunt u een NoSQL-database maken door deze handleiding te volgen: Een database maken in Azure Cosmos DB for NoSQL met behulp van .NET.