Lendo configurações em aplicações console no .NET Core

Robson Rocha de Araújo
2 min readDec 12, 2017

--

Pode parecer óbvio para quem tem experiência com o Visual Studio e o .NET Framework “full”, mas ao criar uma nova aplicação console tanto no Visual Studio 2017 quando pela .NET Core CLI, o suporte para arquivos de configuração não está incluído no template padrão. Neste post, vou mostrar rapidamente como resolver isso.

Tudo o que você precisa fazer é adicionar um pacote NuGet em seu projeto:

Para adicioná-lo via CLI, é fácil:

dotnet add package microsoft.extensions.configuration.json

Adicione na pasta raiz do projeto um arquivo appSettings.json:

O código abaixo demonstra como carregar o arquivo de configuração e ler seus valores:

Ao executar o programa, temos a seguinte saída no console, demonstrando que as configurações foram carregadas com sucesso:

My Setting value

E é isso!

Observações

  • Na linha 12, o método SetBasePath está apontando para a raiz da aplicação de forma simplista, utilizando o método Directory.GetCurrentDirectory, mas dependendo das condições de inicialização da aplicação, este pode não ser o local do executável.
    Uma forma mais confiável pode ser utilizar Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) para obter o caminho do executável;
  • A recomendação de colocar o appSettings.json no diretório raiz da aplicação, bem como o nome do arquivo, são meras convenções. O local e o nome podem ser os que você preferir. Isso é até conveniente quando você quiser ler configurações de múltiplos arquivos, separando as responsabilidades de cada um;

Referências

ConfigurationBuilder Class
JsonConfigurationExtensions.AddJsonFile Method

--

--

Robson Rocha de Araújo

Pai, Microsoft Azure MVP, Arquiteto Cloud, Instrutor, Palestrante, e apaixonado por programação. Ser humano normal nas horas vagas..