Condividi tramite


Introduzione ad Azure Cosmos DB for Table tramite .NET

SI APPLICA A: Tabella

Questo articolo illustra come connettersi ad Azure Cosmos DB for Table usando .NET SDK. Una volta stabilita la connessione, è possibile eseguire operazioni su tabelle ed elementi.

Pacchetto (NuGet) | Esempi | Informazioni di riferimento sulle API | Codice sorgente libreria | Commenti e suggerimenti |

Prerequisiti

Impostare il progetto

Creare una nuova applicazione .NET usando il comando dotnet new con il modello di console.

dotnet new console

Importare il pacchetto NuGet Azure.Data.Tables usando il comando dotnet add package.

dotnet add package Azure.Data.Tables

Creare il progetto con il comando dotnet build.

dotnet build

Connettersi ad Azure Cosmos DB for Table

Per connettersi all'API for Table di Azure Cosmos DB, creare un'istanza della classe TableServiceClient. Questa classe è il punto di partenza per eseguire qualsiasi operazione sulle tabelle.

Per connettersi all'account API per NoSQL usando Microsoft Entra, usare un'entità di sicurezza. Il tipo esatto di entità di sicurezza dipenderà da dove viene ospitato il codice dell'applicazione. La tabella seguente funge da guida di riferimento rapido.

Dove viene eseguita l'applicazione Entità di sicurezza principale
Computer locale (sviluppo e test) Identità utente o entità servizio
Azure Identità gestita
Server o client esterni ad Azure Entità servizio

Importare Azure.Identity

Il pacchetto NuGet Azure.Identity contiene funzionalità di autenticazione di base condivise tra tutte le librerie dell’SDK di Azure.

Importare il pacchetto NuGet Azure.Identity con il comando dotnet add package.

dotnet add package Azure.Identity

Ricompilare il progetto con il comando dotnet build.

dotnet build

Nell'editor di codice aggiungere direttive using per gli spazi dei nomi Azure.Core e Azure.Identity.

using Azure.Core;
using Azure.Identity;

Creare CosmosClient con l'implementazione di credenziali predefinita

Se si esegue un test in un computer locale o se l'applicazione verrà eseguita in servizi di Azure con supporto diretto per le identità gestite, ottenere un token OAuth creando un'istanza di DefaultAzureCredential.

Per questo esempio l'istanza è stata salvata in una variabile di tipo TokenCredential perché si tratta di un tipo più generico riutilizzabile tra gli SDK.

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

Creare una nuova istanza della classe CosmosClient specificando come parametri la variabile di ambiente COSMOS_ENDPOINT e l'oggetto TokenCredential.

// New instance of TableServiceClient class using Microsoft Entra
TableServiceClient client = new(
    endpoint: Environment.GetEnvironmentVariable("COSMOS_ENDPOINT")!,
    tokenCredential: credential
);

Compilare l'applicazione

Durante la compilazione dell'applicazione, il codice interagirà essenzialmente con due tipi di risorse:

  • L'account dell'API per Table, ovvero lo spazio dei nomi di primo livello univoco per i dati di Azure Cosmos DB.

  • Tabelle, che contengono un set di singoli elementi dell'account.

  • Elementi, che rappresentano un singolo elemento della tabella.

Il diagramma seguente mostra la relazione tra queste risorse.

Diagramma della gerarchia di Azure Cosmos DB, inclusi account, tabelle ed elementi.

Diagramma gerarchico che mostra un account Azure Cosmos DB nella parte superiore. L'account presenta due nodi di tabella figlio. Uno dei nodi di tabella include due elementi figlio.

Ogni tipo di risorsa è rappresentato da una o più classi o interfacce .NET associate. Ecco un elenco dei tipi più comuni:

Classe Descrizione
TableServiceClient Questa classe client fornisce una rappresentazione logica lato client per il servizio Azure Cosmos DB. L'oggetto client viene usato per configurare ed eseguire richieste nel servizio.
TableClient Questa classe client è un riferimento a una tabella che può esistere o meno nel servizio. La tabella viene convalidata sul lato server quando si tenta di accedervi o di eseguire un'operazione su di essa.
ITableEntity Questa interfaccia è l'interfaccia di base per tutti gli elementi creati nella tabella o sottoposti a query dalla tabella. Questa interfaccia include tutte le proprietà necessarie per gli elementi nell'API per Table.
TableEntity Questa classe è un'implementazione generica dell'interfaccia ITableEntity come dizionario di coppie chiave-valore.

Nelle guide seguenti viene illustrato come usare ognuna di queste classi per compilare l'applicazione.

Guida Descrizione
Crea una tabella Creare tabelle
Creare un elemento Creare elementi
Leggere un elemento Leggere gli elementi

Vedi anche

Passaggi successivi

Dopo aver eseguito la connessione a un account dell'API per Table, passare alla guida successiva per creare e gestire tabelle.