Förbereda

Slutförd

Du skapar ett .NET-program som importerar och frågar efter data i en Azure Cosmos DB för NoSQL-container. Här diskuterar vi projektets övergripande mål och hur du implementerar import- och frågefunktionerna. Dessutom går vi igenom hur du konfigurerar DET API för NoSQL-konto som du behöver.

Illustration of the icon of an Azure Cosmos DB account.

Projektöversikt

Projektets mål är att skapa och verifiera ett .NET-konsolprogram som laddar upp och frågar objekt i ett API för NoSQL-container. .NET-programmet använder .NET SDK för Azure Cosmos DB for NoSQL för att interagera med en tjänstinstans i Azure. Projektkoden använder transaktionsbatch för att skapa flera relaterade objekt samtidigt. Projektkoden använder också frågor, som representeras som strängar, för att verifiera att objekten har laddats upp.

Följande flödesschema visar den affärslogik som appen behöver utföra:

Diagram of a flowchart showing steps to create and submit client batches.

De viktigaste uppgifterna du behöver utföra är:

  1. Skapa ett Azure Cosmos DB-konto och hämta anslutningssträng.
  2. Skapa ett .NET-konsolprogram och lägg till en paketreferens till Microsoft.Azure.Cosmos SDK.
  3. Skapa databas- och containerresurser.
  4. Lägg till ett enskilt objekt som en enkel åtgärd.
  5. Skapa en transaktionsbatch för att lägga till fyra objekt.
  6. Kör och observera resultatet av en fråga.

Ställ in

För att slutföra det här projektet behöver du ett API för NoSQL-konto.

Skapa Azure Cosmos DB för NoSQL-konto

API:et för NoSQL-kontot används för att lagra de data som du skapar i det här projektet och för att köra frågor. Det här avsnittet vägleder dig genom stegen för att skapa ett nytt konto med hjälp av Azure CLI direkt i Azure Cloud Shell-terminalen.

  1. Skapa en ny gränssnittsvariabel med namnet suffix med ett slumpmässigt tal. Skapa ett nytt API för NoSQL-konto i resursgruppen [resursgruppsnamn för sandbox-miljö].

    let suffix=$RANDOM*$RANDOM
    
    az cosmosdb create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name "mslearn-$suffix" \
        --locations "regionName=westus"
    

    Viktigt!

    Den här resursgruppen har redan skapats av sandbox-miljön.

  2. Vänta tills kommandot har slutförts när det nya kontot har skapats. Det kan ta några minuter att skapa ett nytt konto.

    Dricks

    Du kan navigera till ditt nya API för NoSQL-konto med hjälp av Azure-portalen.

Hämta konto anslutningssträng

Nu när du har ett API för NoSQL-konto kan du använda az cosmosdb keys list kommandot från Azure CLI för att hämta kontots autentiseringsuppgifter. I det här avsnittet filtrerar du utdata från kommandot för att bara returnera en enda anslutningssträng.

  1. Hämta först namnet på det senast skapade API:et för NoSQL-konton.

    let resourceGroup="<rgn>[sandbox resource group name]</rgn>"
    
    az cosmosdb list \
        --resource-group $resourceGroup \
        --query "sort_by([].{name:name,created:systemData.createdAt}, &created)" \
        --output table
    
  2. Hämta nu autentiseringsuppgifterna Primary SQL Connection String för det första kontot från listan över nyligen skapade konton.

    let resourceGroup="<rgn>[sandbox resource group name]</rgn>"
    
    az cosmosdb keys list \
        --resource-group $resourceGroup \
        --name $(az cosmosdb list \
            --resource-group $resourceGroup \
            --query "sort_by([].{name:name,created:systemData.createdAt}, &created)[0].name" \
            --output tsv) \
        --type connection-strings \
        --query "connectionStrings[?description=='Primary SQL Connection String'].connectionString" \
        --output tsv
    
  3. Registrera värdet för den här anslutningssträng. Du använder anslutningssträng senare i det här projektet för att ansluta till det här kontot.

Konfigurera utvecklingsmiljö

En utvecklingscontainermiljö är tillgänglig med alla beroenden som krävs för att slutföra varje övning i det här projektet. Du kan köra utvecklingscontainern i GitHub Codespaces eller lokalt med hjälp av Visual Studio Code.

GitHub Codespaces kör en utvecklingscontainer som hanteras av GitHub med Visual Studio Code för webben som webbläsarbaserat användargränssnitt. För den enklaste utvecklingsmiljön använder du GitHub Codespaces så att du har rätt utvecklarverktyg och beroenden förinstallerade för att slutföra den här utbildningsmodulen.

Viktigt!

Alla GitHub-konton kan använda Codespaces i upp till 60 timmar kostnadsfritt varje månad med 2 kärninstanser.

  1. Skapa ett nytt GitHub Codespace med hjälp av mallen azure-samples/cosmos-db-dotnet .

    Open in GitHub Codespaces

  2. På sidan Skapa kodområde granskar du konfigurationsinställningarna för kodområdet och väljer sedan Skapa nytt kodområde.

  3. Vänta tills kodområdet har startats. Den här startprocessen kan ta några minuter.

  4. Öppna en ny terminal i kodområdet.

  5. Kontrollera att .NET 8 är installerat i din miljö:

    dotnet --list-sdks
    
  6. Stäng terminalen.

De återstående övningarna i det här projektet sker i samband med den här utvecklingscontainern.