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
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Account di Azure Cosmos DB for Table. Creare un'API per l'account Table.
- .NET 6.0 o versioni successive
- Interfaccia della riga di comando di Azure o Azure PowerShell
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 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
- Pacchetto (NuGet)
- Esempi
- Informazioni di riferimento sulle API
- Codice sorgente della libreria
- Inviare feedback
Passaggi successivi
Dopo aver eseguito la connessione a un account dell'API per Table, passare alla guida successiva per creare e gestire tabelle.