Partage via


Ajouter Azure Cosmos DB à votre application à l’aide de Visual Studio Connected Services

Avec Visual Studio, vous pouvez connecter l’un des éléments suivants à Azure Cosmos DB à l’aide de la fonctionnalité services connectés :

  • Application console du .NET Framework
  • ASP.NET Modèle -View-Controller (MVC) (.NET Framework)
  • ASP.NET Core
  • .NET Core (y compris l’application console, WPF, Windows Forms, bibliothèque de classes)
  • Rôle de travail .NET Core
  • Azure Functions
  • Application de plateforme Windows universelle
  • Xamarin
  • Cordoue

La fonctionnalité de service connecté ajoute toutes les références et le code de connexion nécessaires à votre projet et modifie vos fichiers de configuration de manière appropriée.

Conditions préalables

Se connecter à Azure Cosmos DB à l’aide des services connectés

  1. Ouvrez votre projet dans Visual Studio.

  2. Dans l’Explorateur de solutions , cliquez avec le bouton droit sur le nœud Services Connectés, puis, dans le menu contextuel, sélectionnez Ajouter un Service Connecté.

    Si vous ne voyez pas le nœud Services connectés, choisissez Projet>Services connectés>Ajouter.

  3. Sous l’onglet Services connectés, sélectionnez l’icône + pour dépendances de service.

    Capture d’écran montrant comment ajouter une dépendance de service.

  4. Dans la page Ajouter une dépendance, sélectionnez Azure Cosmos DB.

    Capture d’écran montrant l’écran « Ajouter une dépendance », en sélectionnant l’option « Ajouter Azure Cosmos DB ».

    Si vous n’êtes pas déjà connecté, connectez-vous à votre compte Azure. Si vous n’avez pas de compte Azure, vous pouvez vous inscrire à un essai gratuit .

  5. Dans l’écran Azure Cosmos DB, sélectionnez une instance Azure Cosmos DB existante, puis sélectionnez Suivant.

    Si vous devez créer une base de données, passez à l’étape suivante. Sinon, passez à l’étape 7.

    Capture d’écran montrant comment ajouter une base de données Azure Cosmos DB existante au projet.

  6. Pour créer une base de données Azure Cosmos DB :

    1. Sélectionnez Créer une instance Azure Cosmos DB en bas de l’écran.

    2. Remplissez l’écran Azure Cosmos DB : Créer un nouveau, puis sélectionnez Créer.

      Capture d’écran montrant l’écran « Nouveau azure Cosmos DB ».

    3. Lorsque la boîte de dialogue Configurer Azure Cosmos DB s’affiche, la nouvelle base de données apparaît dans la liste. Sélectionnez la nouvelle base de données dans la liste, puis sélectionnez Suivant.

  7. Entrez un nom de chaîne de connexion et choisissez si vous souhaitez que la chaîne de connexion soit stockée dans un fichier de secrets locaux, ou dans Azure Key Vault.

    Capture d’écran montrant l’écran « Spécifier la chaîne de connexion ».

  8. L'écran Résumé des modifications affiche toutes les modifications qui seront apportées à votre projet si vous terminez le processus. Si les modifications semblent correctes, choisissez Terminer.

    Capture d’écran montrant l’écran « Résumé des modifications ».

  9. La connexion s’affiche sous la section Dépendances de Service de l’onglet Services Connectés.

    Capture d’écran montrant la section « Dépendances de service ».

Remarque

Pour les projets .NET Framework, l’interface utilisateur des services connectés est légèrement différente. Pour voir les différences, comparez avec la version de Visual Studio 2019 de cette page.

  1. Ouvrez votre projet dans Visual Studio.

  2. Dans explorateur de solutions, cliquez avec le bouton droit sur le nœud services connectés, puis, dans le menu contextuel, sélectionnez Ajouter pour ouvrir le menu des services disponibles.

    Capture d’écran montrant les options du menu contextuel Services connectés.

    Si vous ne voyez pas le nœud Services connectés, choisissez Projet>Services connectés>Ajouter.

  3. Choisissez Azure Cosmos DB. La page Se connecter à la dépendance s’affiche. Vous devez voir deux options, une pour un émulateur local, l’émulateur Azure Cosmos DB sur conteneur (local), et une pour la connexion au service Azure Cosmos DB en direct. Vous pouvez réduire les coûts et simplifier le développement précoce en commençant par l’émulateur local. Vous pouvez migrer vers le service en direct ultérieurement en répétant ces étapes et en choisissant l’autre option.

    Capture d’écran montrant les choix d’Azure Cosmos DB.

    Si vous choisissez d’utiliser l’émulateur Azure Cosmos DB, cliquez sur Suivant pour afficher l’écran Résumé des modifications, qui montre comment votre projet est modifié. Une référence de package NuGet est ajoutée à votre projet et le code de connexion de l’émulateur local est ajouté à votre projet. Une fois que vous cliquez sur Terminer sur le dernier écran, le conteneur de l’émulateur est créé ; Vous verrez l’état du téléchargement de l’image dans la fenêtre de sortie.

    Si vous souhaitez vous connecter au service Azure, passez à l’étape suivante, ou si vous n’êtes pas déjà connecté, connectez-vous à votre compte Azure avant de continuer. Si vous n’avez pas de compte Azure, vous pouvez vous inscrire à un essai gratuit .

  4. Dans l’écran Azure Cosmos DB, sélectionnez une instance Azure Cosmos DB existante, puis sélectionnez Suivant.

    Si vous devez créer une base de données, passez à l’étape suivante. Sinon, passez à l’étape 7.

    Capture d’écran montrant l’écran « Ajouter azure Cosmos DB existant au projet ».

  5. Pour créer une base de données Azure Cosmos DB :

    1. Sélectionnez Créer une instance Azure Cosmos DB en bas de l’écran.

    2. Remplissez l’écran Azure Cosmos DB : Créer le nouvel écran, puis sélectionnez Créer.

      Capture d’écran montrant l’écran « Nouveau azure Cosmos DB ».

    3. Lorsque la boîte de dialogue Configurer Azure Cosmos DB s’affiche, la nouvelle base de données apparaît dans la liste. Sélectionnez la nouvelle base de données dans la liste, puis sélectionnez Suivant.

  6. Entrez un nom de chaîne de connexion et choisissez si vous souhaitez que la chaîne de connexion soit stockée dans un fichier de secrets locaux, ou dans Azure Key Vault.

    Capture d’écran montrant l’écran « Spécifier la chaîne de connexion ».

    La chaîne de connexion est ajoutée en tant que secret et disponible dans la configuration de l’application. Dans ASP.NET applications Core, vous pouvez accéder à cette chaîne de connexion à l’aide de la propriété Configuration sur l’objet WebApplicationBuild.

  7. L'écran Résumé des modifications affiche toutes les modifications qui seront apportées à votre projet si vous terminez le processus. Si les modifications semblent correctes, choisissez Terminer.

    Capture d’écran montrant l’écran « Résumé des modifications ».

  8. Dans l’Explorateur de solutions, double-cliquez sur le nœud Services connectés pour ouvrir l’onglet Services connectés. La connexion apparaît sous la section dépendances de service :

    Capture d’écran montrant « Dépendances de service » après l’ajout du service connecté.

    Si vous cliquez sur les trois points en regard de la dépendance que vous avez ajoutée, vous pouvez voir différentes options telles que Se connecter pour rouvrir l’Assistant et modifier la connexion. Vous pouvez également cliquer sur les trois points en haut à droite de la fenêtre pour afficher les options permettant de démarrer les dépendances locales, de modifier les paramètres, etc.

  9. Par défaut, la limite de mémoire dans le conteneur est définie sur 2G, mais normalement, plus de mémoire est nécessaire pour exécuter Azure Cosmos DB. Pour résoudre ce problème, accédez au dossier .vs/sd/<GUID>/local sous votre dossier solution. Dans l’Explorateur Windows, vous devrez peut-être activer les fichiers masqués pour afficher le dossier .vs. Recherchez et ouvrez le fichier cosmosdb1.docker-compose.yml. Définissez une limite de mémoire 4G ou supérieure.

    mem_limit = 4G
    

    Pour redémarrer le conteneur avec le nouveau paramètre, dans la section dépendances de service de l’onglet Services connectés, cliquez sur les trois points, puis choisissez Démarrer les dépendances locales.

Remarque

L’émulateur local pour Azure Cosmos DB peut référencer une image de base qui utilise une licence temporaire pour Azure Cosmos DB. Si le conteneur ne démarre pas, cochez l’onglet Journaux d’activité dans la fenêtre Conteneurs* pour le conteneur Azure Cosmos DB. S'il mentionne un problème d'expiration PAL, vous devez obtenir la dernière image de base pour le conteneur local. Exécutez la commande suivante à partir de l’invite de console : docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest. La licence est régulièrement mise à jour et, à son expiration, l’actualisation vers le conteneur le plus récent doit résoudre le problème. Vous pouvez afficher et signaler des problèmes pour l’émulateur Azure Cosmos DB au dépôt GitHub de l’émulateur Azure Cosmos DB.

Étapes suivantes

Découvrez comment stocker des secrets en toute sécurité en suivant les instructions du guide 'Stockage sécurisé des secrets d'application pendant le développement avec ASP.NET Core'. En particulier, pour lire la chaîne de connexion à partir du magasin de secrets, vous pouvez ajouter du code comme indiqué sur la page Lecture du secret avec l’API de configuration. Le code peut ressembler à ceci, où builder est une instance de WebApplicationBuild qui apparaît dans Program.cs dans ASP.NET modèles de projet Core :

// New instance of CosmosClient class using a connection string
using CosmosClient client = new(
    connectionString: builder.Configuration["CosmosDBConnectionString"]
);

Le CosmosClient permet d’accéder aux fonctionnalités d’Azure Cosmos DB par le biais de ses différentes méthodes. Une fois que vous avez une instance de CosmosClient, vous pouvez créer une base de données NoSQL en suivant ce guide : Créer une base de données dans Azure Cosmos DB pour NoSQL à l’aide de .NET.