Rozpoczynanie pracy z usługą Azure Cosmos DB dla bazy danych MongoDB przy użyciu platformy .NET
DOTYCZY: MongoDB
W tym artykule pokazano, jak nawiązać połączenie z usługą Azure Cosmos DB dla bazy danych MongoDB przy użyciu platformy .NET Core i odpowiednich pakietów NuGet. Po nawiązaniu połączenia można wykonywać operacje na bazach danych, kolekcjach i dokumentach.
Dokumentacja referencyjna interfejsu API dla bazy danych | MongoDB — pakiet MongoDB (NuGet)
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- .NET 6.0
- Interfejs wiersza polecenia platformy Azure lub program Azure PowerShell
- Zasób usługi Azure Cosmos DB dla bazy danych MongoDB
Tworzenie nowej aplikacji .NET Core
Utwórz nową aplikację platformy .NET Core w pustym folderze przy użyciu preferowanego terminalu. W tym scenariuszu użyjesz aplikacji konsolowej. Użyj polecenia ,
dotnet new
aby utworzyć aplikację konsolową i nadać jej nazwę.dotnet new console -o app
Dodaj pakiet NuGet bazy danych MongoDB do projektu konsoli.
dotnet add package
Użyj polecenia określającego nazwę pakietu NuGet.dotnet add package MongoDB.Driver
Aby uruchomić aplikację, użyj terminalu, aby przejść do katalogu aplikacji i uruchomić aplikację.
dotnet run
Nawiązywanie połączenia z usługą Azure Cosmos DB dla bazy danych MongoDB przy użyciu sterownika natywnego bazy danych MongoDB
Aby nawiązać połączenie z usługą Azure Cosmos DB przy użyciu sterownika natywnego bazy danych MongoDB, utwórz wystąpienie MongoClient
klasy. Ta klasa jest punktem wyjścia do wykonywania wszystkich operacji względem baz danych MongoDb. Najbardziej typowy konstruktor dla bazy danych MongoClient akceptuje parametry połączenia, które można pobrać, wykonując następujące kroki:
Uzyskiwanie nazwy zasobu
Utwórz zmienną powłoki dla właściwości resourceGroupName.
# Variable for resource group name resourceGroupName="msdocs-cosmos"
az cosmosdb list
Użyj polecenia , aby pobrać nazwę pierwszego konta usługi Azure Cosmos DB w grupie zasobów i zapisać je w zmiennej powłoki accountName.# Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
Pobieranie parametrów połączenia
Znajdź interfejs API dla bazy danych MongoDB parametry połączenia z listy parametry połączenia dla konta za
az cosmosdb keys list
pomocą polecenia .az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountName
Zapisz wartości KLUCZ PODSTAWOWY. Te poświadczenia będą używane później.
Skonfiguruj zmienne środowiskowe
Aby użyć wartości PARAMETRY POŁĄCZENIA w kodzie, ustaw tę wartość w środowisku lokalnym, w którym uruchomiono aplikację. Aby ustawić zmienną środowiskową, użyj preferowanego terminalu, aby uruchomić następujące polecenia:
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
Tworzenie elementu MongoClient przy użyciu parametry połączenia
Zdefiniuj nowe wystąpienie MongoClient
klasy przy użyciu konstruktora i zmiennej parametry połączenia ustawionej wcześniej.
// New instance of CosmosClient class
var client = new MongoClient(Environment.GetEnvironmentVariable("COSMOS_CONNECTION_STRING"));
var settings = client.Settings;
Console.WriteLine(settings.Server.Host);
Używanie klas klienta bazy danych MongoDB z usługą Azure Cosmos DB dla interfejsu API dla bazy danych MongoDB
Przed rozpoczęciem tworzenia aplikacji przyjrzyjmy się hierarchii zasobów w usłudze Azure Cosmos DB. Usługa Azure Cosmos DB ma określony model obiektów używany do tworzenia zasobów i uzyskiwania do ich dostępu. Usługa Azure Cosmos DB tworzy zasoby w hierarchii składającej się z kont, baz danych, kolekcji i dokumentów.
Diagram hierarchiczny przedstawiający konto usługi Azure Cosmos DB u góry. Konto ma dwa podrzędne węzły bazy danych. Jeden z węzłów bazy danych zawiera dwa podrzędne węzły kolekcji. Drugi węzeł bazy danych zawiera jeden podrzędny węzeł kolekcji. Ten węzeł pojedynczej kolekcji ma trzy podrzędne węzły dokumentu.
Każdy typ zasobu jest reprezentowany przez co najmniej jedną skojarzną klasę języka C#. Oto lista najpopularniejszych klas:
Klasa | opis |
---|---|
MongoClient |
Ta klasa zapewnia logiczną reprezentację po stronie klienta dla warstwy interfejsu API dla bazy danych MongoDB w usłudze Azure Cosmos DB. Obiekt klienta służy do konfigurowania i wykonywania żądań względem usługi. |
MongoDatabase |
Ta klasa jest odwołaniem do bazy danych, która może lub nie istnieje jeszcze w usłudze. Baza danych jest weryfikowana lub tworzona po stronie serwera podczas próby wykonania operacji względem niej. |
Collection |
Ta klasa jest odwołaniem do kolekcji, która również może jeszcze nie istnieć w usłudze. Kolekcja jest weryfikowana po stronie serwera podczas próby jej pracy. |
W poniższych przewodnikach pokazano, jak używać każdej z tych klas do tworzenia aplikacji i zarządzania danymi.
Przewodnik:
- Zarządzanie bazami danych
- Zarządzanie kolekcjami
- Zarządzanie dokumentami
- Znajdowanie dokumentów przy użyciu zapytań
Zobacz też
Następne kroki
Po nawiązaniu połączenia z kontem interfejsu API dla bazy danych MongoDB użyj następnego przewodnika, aby utworzyć bazy danych i zarządzać nimi.