Introdução ao Azure Cosmos DB for Table usando o .NET
APLICA-SE A: Tabela
Este artigo mostra como se conectar ao Azure Cosmos DB for Table usando o SDK do .NET. Uma vez conectado, você pode executar operações em tabelas e itens.
Pacote (NuGet) | Exemplos | Referência | da API Código-fonte | da biblioteca Enviar comentários |
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Azure Cosmos DB para conta de tabela. Crie uma API para a conta Table.
- .NET 6.0 ou posterior
- Interface de Linha de Comando (CLI) do Azure ou Azure PowerShell
Configure o seu projeto
Crie um novo aplicativo .NET usando o dotnet new
comando com o modelo de console .
dotnet new console
Importe o pacote NuGet Azure.Data.Tables usando o dotnet add package
comando.
dotnet add package Azure.Data.Tables
Crie o projeto com o dotnet build
comando.
dotnet build
Conectar-se ao Azure Cosmos DB para Tabela
Para se conectar à API da Tabela do Azure Cosmos DB, crie uma instância da TableServiceClient
classe. Esta classe é o ponto de partida para executar todas as operações em tabelas.
Para se conectar à sua API para conta NoSQL usando o Microsoft Entra, use uma entidade de segurança. O tipo exato de entidade dependerá de onde você hospeda o código do aplicativo. A tabela abaixo serve como um guia de referência rápida.
Onde o aplicativo é executado | Principal de segurança |
---|---|
Máquina local (desenvolvimento e testes) | Identidade do usuário ou entidade de serviço |
Azure | Identidade gerida |
Servidores ou clientes fora do Azure | Service principal (Principal de serviço) |
Importar Azure.Identity
O pacote NuGet Azure.Identity contém a funcionalidade de autenticação principal que é compartilhada entre todas as bibliotecas do SDK do Azure.
Importe o pacote NuGet do Azure.Identity usando o dotnet add package
comando.
dotnet add package Azure.Identity
Reconstrua o projeto com o dotnet build
comando.
dotnet build
No editor de códigos, adicione usando diretivas para Azure.Core
e Azure.Identity
namespaces.
using Azure.Core;
using Azure.Identity;
Criar CosmosClient com implementação de credenciais padrão
Se você estiver testando em uma máquina local ou se seu aplicativo for executado nos serviços do Azure com suporte direto para identidades gerenciadas, obtenha um token OAuth criando uma DefaultAzureCredential
instância.
Neste exemplo, salvamos a instância em uma variável de tipo TokenCredential
, pois é um tipo mais genérico que pode ser reutilizado em SDKs.
// Credential class for testing on a local machine or Azure services
TokenCredential credential = new DefaultAzureCredential();
Crie uma nova instância da classe CosmosClient com a COSMOS_ENDPOINT
variável de ambiente e o objeto TokenCredential como parâmetros.
// New instance of TableServiceClient class using Microsoft Entra
TableServiceClient client = new(
endpoint: Environment.GetEnvironmentVariable("COSMOS_ENDPOINT")!,
tokenCredential: credential
);
Compilar a aplicação
À medida que você cria seu aplicativo, seu código interage principalmente com quatro tipos de recursos:
A conta API for Table, que é o namespace de nível superior exclusivo para seus dados do Azure Cosmos DB.
Tabelas, que contêm um conjunto de itens individuais na sua conta.
Itens, que representam um item individual na tabela.
O diagrama seguinte mostra a relação entre estes recursos.
Diagrama hierárquico mostrando uma conta do Azure Cosmos DB na parte superior. A conta tem dois nós de tabela filho. Um dos nós da tabela inclui dois itens filho.
Cada tipo de recurso é representado por uma ou mais classes ou interfaces .NET associadas. Aqui está uma lista dos tipos mais comuns:
Classe | Description |
---|---|
TableServiceClient |
Essa classe de cliente fornece uma representação lógica do lado do cliente para o serviço Azure Cosmos DB. O objeto cliente é usado para configurar e executar solicitações no serviço. |
TableClient |
Esta classe de cliente é uma referência a uma tabela que pode, ou não, existir no serviço ainda. A tabela é validada no lado do servidor quando você tenta acessá-la ou executar uma operação contra ela. |
ITableEntity |
Esta interface é a interface base para quaisquer itens que são criados na tabela ou consultados a partir da tabela. Essa interface inclui todas as propriedades necessárias para itens na API para Tabela. |
TableEntity |
Esta classe é uma implementação genérica da ITableEntity interface como um dicionário de pares chave-valor. |
Os guias a seguir mostram como usar cada uma dessas classes para criar seu aplicativo.
Guia | Description |
---|---|
Criar uma tabela | Criar tabelas |
Criar um item | Criar itens |
Ler um item | Ler itens |
Consulte também
Próximos passos
Agora que você se conectou a uma conta da API para Tabela, use o próximo guia para criar e gerenciar tabelas.