Close Menu
Código Simples .NETCódigo Simples .NET
    Facebook X (Twitter) Instagram
    Trending
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    • Por que escalar escrita é tão mais difícil do que escalar leitura?
    • MongoDB Analyzer para .NET: Visualize e otimize suas consultas de forma simples
    • Cardinalidade: O Conceito que Transforma o Desempenho de Bancos de Dados SQL e NoSQL
    Facebook X (Twitter) Instagram
    Código Simples .NETCódigo Simples .NET
    Código Simples .NETCódigo Simples .NET
    Home»Asp.net»Acessando e manipulando configurações globais do appsetings.json com .NET Core 2.0

    Acessando e manipulando configurações globais do appsetings.json com .NET Core 2.0

    Jhonathan SoaresBy Jhonathan Soares19 de janeiro de 20181 Min Read Asp.net
    Share
    Facebook Twitter LinkedIn WhatsApp Copy Link

    Ao trabalhar com projetos ASP.NET MVC ou WebAPI com base no .NET Core 2.0, você pode definir sua estrutura de configuração no arquivo appsetings.json onde você pode acessar em qualquer parte do seu projeto para acessar estas informações, que ao meu ver são as novas “chaves” do antigo web.config

    Veja a estrutura de exemplo do meu arquivo appsetings.json:

    {
      "Section": {
        "Config1": "Uma string qualquer",
        "Config2": {
          "Subconfig1": false,
          "Subconfig2": 50
        }
      }
    }

     

    Usando Injeção de Dependência já incorporada dentro do framework, você pode injetar dados de configuração em uma Controller por exemplo. Use o método AddSingleton para adicionar um serviço singleton dentro do arquivo de inicialização do projeto.

     public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
        services.AddSingleton<IConfiguration>(Configuration);
    }

     

    Já na controller você apenas precisará colocar a instância da classe de configuração no construtor, poder utilizar onde quiser:

      public class HomeController : Controller
        {
            private IConfiguration _configuration;
     
            public HomeController(IConfiguration Configuration)
            {
                _configuration = Configuration;
            }
     
            public IActionResult Index()
            {
                // Obtendo via Key
                ViewData["SectionConfig1"] = _configuration["Section:Config1"];
     
                // Obtendo via método GetSection 
                ViewData["SectionConfig2"] = _configuration.GetSection("Section").GetSection("Config2").GetSection("SubConfig1");
     
                //Obtendo via médoto GetSection e via Key de forma mixada
                ViewData["SectionConfig3"] = _configuration.GetSection("Section")["Config2:SubConfig2"];
     
                return View();
            }
        }
        

     

    Todo o código da solução está no meu github: https://github.com/jhomarolo/configurationappsetings/

    Um abraço a todos!

    Share. Facebook Twitter LinkedIn Telegram WhatsApp Copy Link
    Jhonathan Soares
    • Website
    • Facebook
    • X (Twitter)
    • LinkedIn

    Criador do blog Código Simples e com mais 15 anos de experiência em TI, com títulos de MVP Microsoft na área de Visual Studio Development, Neo4j Top 50 Certificate, Scrum Master e MongoDB Evangelist.

    Posts Relacionados

    O que é a Ecma e qual é sua relação com C#?

    C# Post do Leitor 29 de julho de 20247 Mins Read

    Boas práticas de criação, armazenamento e validação de senhas em .NET

    Asp.net Boas práticas 9 de julho de 20248 Mins Read

    UUID vs ULID: comparação e exemplos em C#

    C# 19 de junho de 20245 Mins Read
    Newsletter

    Digite seu endereço de e-mail para receber notificações de novas publicações por e-mail.

    Junte-se a 25mil outros assinantes
    Posts recentes
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    Categorias
    • Arquitetura (14)
      • Testes (2)
    • Asp.net (120)
      • C# (89)
      • Mvc (13)
    • Banco de dados (90)
      • NoSql (58)
      • Sql (38)
    • Boas práticas (29)
      • Gestão & Produtividade (1)
      • Metodologias Ágeis (6)
    • Cursos (52)
    • Dicas (105)
    • Front-End (92)
    • IA (1)
    • Linux (6)
    • NodeJS (4)
    • Post do Leitor (9)
    • Python (5)
    • Seo (12)
    • Tecnologia (30)
      • ITIL (1)
      • Padrões de Projeto (4)
    • Testes (2)

    VEJA TAMBÉM

    Cursos
    12 de fevereiro de 20166 Mins Read

    1000 livros gratuitos sobre programação!

    Olha que dica bacana! A pagina só com livros sobre programação é mantida no GitHub…

    30 APIs Gratuitas para desenvolvedores

    Facebook X (Twitter) Instagram LinkedIn

    Type above and press Enter to search. Press Esc to cancel.

    Vá para versão mobile