Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
Você está procurando uma solução de banco de dados para cenários de alta escala com um SLA (contrato de nível de serviço de disponibilidade) de 99,999%, dimensionamento automático instantâneo e failover automático em várias regiões? Considere Azure Cosmos DB para NoSQL.
Este artigo mostra como se conectar ao Azure Cosmos DB for Table usando o SDK do .NET. Depois de conectado, você pode executar operações em tabelas e itens.
Pacote (NuGet) | Amostras | Referência de API | Código-fonte da biblioteca | Fazer comentários |
Prerequisites
- Uma conta do Azure com uma assinatura ativa. Crie uma conta gratuitamente.
- Conta do Azure Cosmos DB para Tabela. Criar um API para conta de Tabela.
- .NET 6.0 ou posterior
- Azure Command-Line Interface (CLI) ou Azure PowerShell
Configure seu projeto
Crie um novo aplicativo .NET usando o comando dotnet new com o modelo console.
dotnet new console
Importe o pacote do NuGet Azure.Data.Tables usando comando dotnet add package.
dotnet add package Azure.Data.Tables
Compile o projeto com o comando dotnet build.
dotnet build
Conectar-se ao Azure Cosmos DB for Table
Para se conectar à API para Tabela do Azure Cosmos DB, crie uma instância da classe TableServiceClient. Essa classe é o ponto de partida para executar todas as operações em tabelas.
Para se conectar à sua conta da API para NoSQL usando o Microsoft Entra, use um principal de segurança. O tipo exato de principal dependerá de onde você hospeda seu código de aplicativo. A tabela abaixo serve como um guia de referência rápida.
| Onde o aplicativo é executado | Principal de segurança |
|---|---|
| Computador local (desenvolvimento e teste) | Identidade do usuário ou entidade de serviço |
| Azure | Identidade gerenciada |
| Servidores ou clientes fora do Azure | Entidade de serviço |
Importar Azure.Identity
O Azure. Identidade pacote NuGet contém a funcionalidade de autenticação principal que é compartilhada entre todas as bibliotecas do SDK Azure.
Importe o pacote de NuGet Azure.Identity usando comando dotnet add package.
dotnet add package Azure.Identity
Recompile o projeto com o comando dotnet build.
dotnet build
No editor de código, adicione as diretivas de uso para namespaces Azure.Core e Azure.Identity.
using Azure.Core;
using Azure.Identity;
Criar o CosmosClient com implementação de credencial padrão
Se você estiver testando em um computador local ou seu aplicativo será executado nos serviços do Azure com suporte direto para identidades gerenciadas, obtenha um token OAuth criando uma instância DefaultAzureCredential.
Para este exemplo, salvamos a instância em uma variável de tipo TokenCredential, pois esse é um tipo mais genérico que pode ser reutilizável 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 variável de ambiente COSMOS_ENDPOINT 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
);
Crie seu aplicativo
Conforme você compila seu aplicativo, seu código interagirá principalmente com quatro tipos de recursos:
A conta da API para Tabela, que é o namespace exclusivo de nível superior dos dados do Azure Cosmos DB.
Tabelas, que contêm um conjunto de itens individuais em sua conta.
Itens que representam um item individual da sua tabela.
O diagrama a seguir mostra a relação entre esses recursos.
Diagrama hierárquico mostrando uma conta Azure Cosmos DB na parte superior. A conta tem dois nós de tabela filhos. Um dos nós de tabela inclui dois itens filho.
Cada tipo de recurso é representado por uma ou mais interfaces ou classes .NET associadas. Veja uma lista dos tipos mais comuns:
| Class | Description |
|---|---|
TableServiceClient |
Esta classe de cliente fornece uma representação lógica do lado do cliente para o serviço do Azure Cosmos DB. Esse objeto do 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. A tabela é validada no lado do servidor quando você tenta acessá-la ou executa uma operação nela. |
ITableEntity |
Essa é a interface base para todos os itens criados na tabela ou consultados utilizando-a. Essa interface inclui todas as propriedades necessárias para itens na API para Tabela. |
TableEntity |
Essa classe é uma implementação genérica da interface ITableEntity como um dicionário de pares chave-valor. |
Os guias a seguir mostram como usar cada uma dessas classes para compilar seu aplicativo.
| Guide | Description |
|---|---|
| Criar uma tabela | Criar tabelas |
| Criar um item | Criar itens |
| Ler um item | Ler itens |
Consulte também
Próximas Etapas
Agora que você se conectou a uma conta da API para Tabela, use o próximo guia para criar e gerenciar tabelas.