Partilhar via


Usar ambientes de ficheiros de configuração no Data API builder

O construtor de API de dados suporta vários ambientes de configuração, semelhantes ao do ASP.NET Core appsettings.json. Você pode definir uma configuração base (dab-config.json) e variantes específicas do ambiente (dab-config.Development.json, dab-config.Production.json). Esse recurso permite o gerenciamento flexível de cadeias de conexão, configurações de autenticação e outras alterações de configuração entre ambientes.

Etapa 1: Criar uma configuração básica

Criar um .env ficheiro

DEV_CONNECTION_STRING=Server=tcp:127.0.0.1,1433;User ID=<username>;Password=<password>;
PROD_CONNECTION_STRING=Server=tcp:127.0.0.1,1433;User ID=<username>;Password=<password>;

Observação

O .env arquivo não tem nome de arquivo, apenas uma extensão.

Executar dab init para criar o arquivo de configuração base

dab init --database-type "mssql" --connection-string ""
dab add Book --source "dbo.Books" --permissions "anonymous:*"

Esta etapa produz um arquivo básico dab-config.json que é compartilhado em todos os ambientes.

Etapa 2: Adicionar arquivos de configuração específicos do ambiente

- dab-config.json
- dab-config.Development.json
- dab-config.Production.json

Arquivo de configuração de desenvolvimento (dab-config.Development.json)

{
  "data-source": {
    "connection-string": "@env('DEV_CONNECTION_STRING')"
  }
}

Arquivo de configuração de produção (dab-config.Production.json)

{
  "data-source": {
    "connection-string": "@env('PROD_CONNECTION_STRING')"
  }
}

Observação

Arquivos específicos do ambiente substituem a configuração base quando DAB_ENVIRONMENT é definida.

Etapa 3: Iniciar o DAB com o ambiente correto

Use este comando para definir o ambiente como Development:

DAB_ENVIRONMENT=Development dab start

Use este comando para definir o ambiente como Production:

DAB_ENVIRONMENT=Production dab start

Observação

Se nenhum ambiente estiver definido, o ambiente padrão será Production.

Etapa 4: Verificar a configuração

  • REST: http://localhost:5000/api/Book
  • GraphQL: http://localhost:5000/graphql
  • Swagger: http://localhost:5000/swagger
  • Saúde: http://localhost:5000/health

Revisão

  • Mantenha os arquivos .env fora do .gitignore controle de versão
  • Uso @env() ou @akv() para segredos
  • Use DAB_ENVIRONMENT para alternar entre ambientes facilmente