Erste Schritte mit Azure Cosmos DB for MongoDB unter Verwendung von .NET
GILT FÜR: MongoDB
In diesem Artikel erfahren Sie, wie Sie eine Verbindung mit Azure Cosmos DB for MongoDB mithilfe von .NET Core und den relevanten NuGet-Paketen herstellen. Sobald die Verbindung hergestellt ist, können Sie Vorgänge für Datenbanken, Sammlungen und Dokumente ausführen.
Hinweis
Die Beispielcodeschnipsel sind auf GitHub als .NET-Core-Projekt verfügbar.
API for MongoDB-Referenzdokumentation | MongoDB-Paket (NuGet)
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- .NET 6.0
- Azure-Befehlszeilenschnittstelle (CLI) oder Azure PowerShell
- Azure Cosmos DB for MongoDB-Ressource
Erstellen Sie einer neuen .NET Core-App
Erstellen Sie auf Ihrem bevorzugten Terminal in einem leeren Ordner eine neue .NET Core-Anwendung. Für dieses Szenario verwenden Sie eine Konsolenanwendung. Verwenden Sie den Befehl
dotnet new
, um die Konsolen-App zu erstellen und zu benennen.dotnet new console -o app
Fügen Sie dem Konsolenprojekt das MongoDB NuGet-Paket hinzu. Verwenden Sie den
dotnet add package
-Befehl, der den Namen des NuGet Pakets angibt.dotnet add package MongoDB.Driver
Verwenden Sie zur Ausführung der App ein Terminal, um zum Anwendungsverzeichnis zu navigieren und die Anwendung auszuführen.
dotnet run
Herstellen einer Verbindung zu Azure Cosmos DB for MongoDB mit dem nativen MongoDB-Treiber
Um über den nativen MongoDB-Treiber eine Verbindung mit Azure Cosmos DB herzustellen, erstellen Sie eine Instanz der MongoClient
-Klasse. Diese Klasse ist der Ausgangspunkt, von dem aus alle Vorgänge für MongoDb-Datenbanken ausgeführt werden. Der am häufigsten verwendete Konstruktor für MongoClient akzeptiert eine Verbindungszeichenfolge, die Sie mithilfe der folgenden Schritte abrufen können:
Ressourcennamen abrufen
Erstellen Sie eine Shell-Variable für resourceGroupName.
# Variable for resource group name resourceGroupName="msdocs-cosmos"
Verwenden Sie den Befehl
az cosmosdb list
, um den Namen des ersten Azure Cosmos DB-Kontos in Ihrer Ressourcengruppe abzurufen und in der Shell-Variable accountName zu speichern.# Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
Abrufen der Verbindungszeichenfolge
Suchen Sie mit dem Befehl
az cosmosdb keys list
die Verbindungszeichenfolge der API für MongoDB in der Liste der Verbindungszeichenfolgen für das Konto.az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountName
Zeichnen Sie die PRIMARY KEY-Werte (Primärschlüsselwerte) auf. Sie werden diese Anmeldeinformationen zu einem späteren Zeitpunkt verwenden.
Konfigurieren von Umgebungsvariablen
Wenn Sie die Werte von CONNECTION STRING (Verbindungszeichenfolge) in Ihrem Code verwenden möchten, legen Sie diesen Wert in der lokalen Umgebung fest, in der die Anwendung ausgeführt wird. Verwenden Sie zum Festlegen der Umgebungsvariablen Ihr bevorzugtes Terminal, um die folgenden Befehle auszuführen:
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
MongoClient mit Verbindungszeichenfolge erstellen
Definieren Sie eine neue Instanz der MongoClient
-Klasse mit dem Konstruktor und der Variablen der Verbindungszeichenfolge, die Sie zuvor festgelegt haben.
// New instance of CosmosClient class
var client = new MongoClient(Environment.GetEnvironmentVariable("COSMOS_CONNECTION_STRING"));
var settings = client.Settings;
Console.WriteLine(settings.Server.Host);
Verwenden der MongoDB-Clientklassen mit Azure Cosmos DB für die API for MongoDB
Bevor Sie mit dem Erstellen der Anwendung beginnen, sehen Sie sich die Hierarchie von Ressourcen in Azure Cosmos DB an. Bei Azure Cosmos DB gibt es ein spezifisches Objektmodell, das zum Erstellen von und Zugreifen auf Ressourcen verwendet wird. Azure Cosmos DB erstellt Ressourcen in einer Hierarchie, die aus Konten, Datenbanken, Sammlungen und Dokumenten besteht.
Hierarchisches Diagramm mit einem Azure Cosmos DB-Konto oben. Das Konto verfügt über zwei untergeordnete Datenbankknoten. Einer der Datenbankknoten enthält zwei untergeordnete Sammlungsknoten. Der andere Datenbankknoten enthält einen einzelnen untergeordneten Sammlungsknoten. Dieser einzelne Sammlungsknoten verfügt über drei untergeordnete Dokumentknoten.
Jeder Ressourcentyp wird durch eine oder mehrere zugeordnete C#-Klassen dargestellt. Nachstehend finden Sie eine Liste der gängigsten Klassen:
Klasse | BESCHREIBUNG |
---|---|
MongoClient |
Diese Klasse bietet eine clientseitige logische Darstellung für die „API für MongoDB“-Ebene in Azure Cosmos DB. Das Clientobjekt wird zum Konfigurieren und Ausführen von Anforderungen für den Dienst verwendet. |
MongoDatabase |
Diese Klasse ist ein Verweis auf eine Datenbank, die möglicherweise noch nicht im Dienst vorhanden ist. Die Datenbank wird vom Server aus überprüft oder erstellt, wenn Sie versuchen, einen Vorgang darauf auszuführen. |
Collection |
Diese Klasse ist ein Verweis auf eine Sammlung, die im Dienst ebenfalls möglicherweise noch nicht vorhanden ist. Die Sammlung wird vom Server aus überprüft, wenn Sie versuchen, damit zu arbeiten. |
In den folgenden Leitfäden wird gezeigt, wie Sie diese verschiedenen Klassen verwenden, um Ihre Anwendung zu erstellen und Daten zu verwalten.
Anleitung:
- Verwalten von Datenbanken
- Verwalten von Sammlungen
- Verwalten von Dokumenten
- Verwenden von Abfragen zum Suchen von Dokumenten
Weitere Informationen
Nächste Schritte
Nachdem Sie nun eine Verbindung mit einem API für MongoDB-Konto hergestellt haben, befolgen Sie die nächste Anleitung zum Erstellen und Verwalten von Datenbanken.