Partager via


Bien démarrer avec Azure Cosmos DB for NoSQL à l’aide de .NET

S’APPLIQUE À : NoSQL

Cet article vous montre comment vous connecter à Azure Cosmos DB for NoSQL à l’aide du SDK .NET. Une fois connecté, vous pouvez effectuer des opérations sur des bases de données, des conteneurs et des éléments.

Package (NuGet) | Exemples | Référence API | Code source de la bibliothèque | Envoyer des commentaires

Prérequis

Configuration de votre projet

Créez une application .NET à l’aide de la commande dotnet new avec le modèle de console.

dotnet new console

Importez le package NuGet Microsoft.Azure.Cosmos à l’aide de la commande dotnet add package.

dotnet add package Microsoft.Azure.Cosmos

Générez le projet avec la commande dotnet build.

dotnet build

Se connecter à Azure Cosmos DB for NoSQL

Pour vous connecter à l’API pour NoSQL de Azure Cosmos DB, créez une instance de la classe CosmosClient. Cette classe est le point de départ pour effectuer toutes les opérations sur des bases de données.

Pour vous connecter à votre API pour un compte NoSQL à l’aide de Microsoft Entra, utilisez un principal de sécurité. Le type exact de principal dépend de l’emplacement où vous hébergez votre code d’application. Le tableau ci-dessous sert de guide de référence rapide.

Emplacement d’exécution de l’application Principal de sécurité
Ordinateur local (développement et test) Identité de l’utilisateur ou principal du service
Azure Identité managée
Serveurs ou clients en dehors d’Azure Principal du service

Importer Azure.Identity

Le package NuGet Azure.Identity contient les fonctionnalités d’authentification principales partagées entre toutes les bibliothèques du kit de développement logiciel (SDK) Azure.

Importez le package NuGet Azure.Identity à l’aide de la commande dotnet add package.

dotnet add package Azure.Identity

Régénérez le projet avec la commande dotnet build.

dotnet build

Dans votre éditeur de code, ajoutez des directives d’utilisation pour des espaces de noms Azure.Core et Azure.Identity.

using Azure.Core;
using Azure.Identity;

Créer CosmosClient avec l’implémentation des informations d’identification par défaut

Si vous testez sur une machine locale ou que votre application s’exécute sur des services Azure avec prise en charge directe des identités managées, obtenez un jeton OAuth en créant une instance DefaultAzureCredential.

Pour cet exemple, nous avons enregistré l’instance dans une variable de type TokenCredential, car c’est un type plus générique réutilisable dans les kits SDK.

// Credential class for testing on a local machine or Azure services
TokenCredential credential = new DefaultAzureCredential();

Créez une instance de la classe CosmosClient avec la variable d’environnement COSMOS_ENDPOINT et l’objet TokenCredential en tant que paramètres.

// New instance of CosmosClient class using a connection string
using CosmosClient client = new(
    accountEndpoint: Environment.GetEnvironmentVariable("COSMOS_ENDPOINT")!,
    tokenCredential: credential
);

Générer votre application

À mesure que vous générez votre application, votre code interagit principalement avec quatre types de ressources :

  • Le compte d’API for NoSQL qui est l’unique espace de noms de niveau supérieur pour vos données Azure Cosmos DB.

  • Bases de données, qui organisent les conteneurs dans votre compte.

  • Conteneurs, qui contiennent un ensemble d’éléments individuels dans votre base de données.

  • Éléments, qui représentent un document JSON dans votre conteneur.

Le diagramme suivant montre la relation entre ces ressources.

Diagramme de la hiérarchie d’Azure Cosmos DB comprenant les comptes, les bases de données, les conteneurs et les éléments.

Diagramme hiérarchique montrant un compte Azure Cosmos DB au sommet. Le compte présente deux nœuds de base de données enfants. L’un des nœuds de base de données comprend deux nœuds de conteneur enfants. L’autre nœud de base de données inclut un nœud de conteneur enfant unique. Ce nœud de conteneur unique a trois nœuds d’éléments enfants.

Chaque type de ressource est représenté par une ou plusieurs classes .NET associées. Voici une liste des classes les plus courantes :

Classe Description
CosmosClient Cette classe fournit une représentation logique du côté client pour le service Azure Cosmos DB. Ce client est utilisé pour configurer et exécuter des requêtes sur le service.
Database Cette classe est une référence à une base de données qui peut, ou non, exister dans le service. La base de données est validée côté serveur lorsque vous tentez d’y accéder ou d’effectuer une opération sur celle-ci.
Container Cette classe est une référence à un conteneur qui n’existe pas encore dans le service. Le conteneur est validé côté serveur lorsque vous tentez de l’utiliser.

Les guides suivants vous montrent comment utiliser chacune de ces classes pour générer votre application.

Guide Description
Créer une base de données Créer des bases de données
Créer un conteneur Créer des conteneurs
Lire un élément Pointer et lire un élément spécifique
Éléments de requête Interroger plusieurs éléments

Voir aussi

Étapes suivantes