Kom igång med Azure Cosmos DB för MongoDB med hjälp av .NET
GÄLLER FÖR: MongoDB
Den här artikeln visar hur du ansluter till Azure Cosmos DB för MongoDB med hjälp av .NET Core och relevanta NuGet-paket. När du är ansluten kan du utföra åtgärder på databaser, samlingar och dokument.
API för MongoDB-referensdokumentation | MongoDB Package (NuGet)
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- .NET 6.0
- Azures kommandoradsgränssnitt (CLI) eller Azure PowerShell
- Azure Cosmos DB för MongoDB-resurs
Skapa en ny .NET Core-app
Skapa ett nytt .NET Core-program i en tom mapp med hjälp av önskad terminal. I det här scenariot använder du ett konsolprogram.
dotnet new
Använd kommandot för att skapa och namnge konsolappen.dotnet new console -o app
Lägg till MongoDB NuGet-paketet i konsolprojektet.
dotnet add package
Använd kommandot som anger namnet på NuGet-paketet.dotnet add package MongoDB.Driver
Om du vill köra appen använder du en terminal för att navigera till programkatalogen och köra programmet.
dotnet run
Ansluta till Azure Cosmos DB för MongoDB med den inbyggda MongoDB-drivrutinen
Om du vill ansluta till Azure Cosmos DB med den inbyggda MongoDB-drivrutinen skapar du en instans av MongoClient
klassen. Den här klassen är startpunkten för att utföra alla åtgärder mot MongoDb-databaser. Den vanligaste konstruktorn för MongoClient accepterar en niska veze som du kan hämta med hjälp av följande steg:
Hämta resursnamn
Skapa en gränssnittsvariabel för resourceGroupName.
# Variable for resource group name resourceGroupName="msdocs-cosmos"
az cosmosdb list
Använd kommandot för att hämta namnet på det första Azure Cosmos DB-kontot i resursgruppen och lagra det i variabeln accountName-gränssnittet.# Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
Hämta anslutningssträngen
Leta upp API:et för MongoDB-niska veze från listan över niska veze för kontot med
az cosmosdb keys list
kommandot .az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountName
Registrera primärnyckelvärdena. Du använder dessa autentiseringsuppgifter senare.
Konfigurera miljövariabler
Om du vill använda VÄRDENA FÖR ANSLUTNINGSSTRÄNG i koden anger du det här värdet i den lokala miljö som kör programmet. Om du vill ange miljövariabeln använder du önskad terminal för att köra följande kommandon:
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
Skapa MongoClient med niska veze
Definiera en ny instans av MongoClient
klassen med konstruktorn och den niska veze variabel som du angav tidigare.
// New instance of CosmosClient class
var client = new MongoClient(Environment.GetEnvironmentVariable("COSMOS_CONNECTION_STRING"));
var settings = client.Settings;
Console.WriteLine(settings.Server.Host);
Använda MongoDB-klientklasserna med Azure Cosmos DB för API för MongoDB
Innan du börjar skapa programmet ska vi titta på resurshierarkin i Azure Cosmos DB. Azure Cosmos DB har en specifik objektmodell som används för att skapa och komma åt resurser. Azure Cosmos DB skapar resurser i en hierarki som består av konton, databaser, samlingar och dokument.
Hierarkiskt diagram som visar ett Azure Cosmos DB DB-konto högst upp. Kontot har två underordnade databasnoder. En av databasnoderna innehåller två underordnade samlingsnoder. Den andra databasnoden innehåller en enda underordnad samlingsnod. Den enda samlingsnoden har tre underordnade doc-noder.
Varje typ av resurs representeras av en eller flera associerade C#-klasser. Här är en lista över de vanligaste klasserna:
Klass | beskrivning |
---|---|
MongoClient |
Den här klassen ger en logisk representation på klientsidan för API:et för MongoDB-lagret i Azure Cosmos DB. Klientobjektet används för att konfigurera och köra begäranden mot tjänsten. |
MongoDatabase |
Den här klassen är en referens till en databas som kanske, eller kanske inte, finns i tjänsten ännu. Databasen verifieras eller skapas på serversidan när du försöker utföra en åtgärd mot den. |
Collection |
Den här klassen är en referens till en samling som kanske inte heller finns i tjänsten ännu. Samlingen verifieras på serversidan när du försöker arbeta med den. |
Följande guider visar hur du använder var och en av dessa klasser för att skapa ditt program och hantera data.
Guide:
Se även
Nästa steg
Nu när du har anslutit till ett API för MongoDB-konto använder du nästa guide för att skapa och hantera databaser.