zoukankan      html  css  js  c++  java
  • .Net Core 访问 appsettings.json

    1、添加 NuGet 包

      Microsoft.Extensions.Configuration

    2、通过注入获取 Configuration

      注意:注入获取的必须提前在 StartUp 里面提前注册

        public class Startup
        {
            public IConfiguration Configuration { get; }
    
            public StartupAutofacIdp(IConfiguration configuration, IHostingEnvironment env)
            {
                Configuration = configuration;
            }
    
            public void ConfigureServices(IServiceCollection services)
            {
                //TestConfig 对应json文件 的节点
                services.Configure<TestConfig>(Configuration.GetSection("ConnectionStrings"));
            }
        }
    
        public class TestConfig
        {
            public string Default { get; set; }
            public string Line { get; set; }
        }
    
    appsetting.json
    
    {
      "ConnectionStrings": {
        "Default": "Data Source=.; Initial Catalog=xiaoer; User Id=sa; Password=123456;",
        "Line": "Data Source=.; Initial Catalog=xiaoer; User Id=sa; Password=1234567890;"
      },
      "Logging": {
        "LogLevel": {
          "Default": "Warning"
        }
      },
      "AllowedHosts": "*"
    }

        public class HomeController : Controller
        {
            private TestConfig testConfig;
            public IConfiguration Configuration;
            public HomeController(IOptions<TestConfig> options, IConfiguration configuration)
            {
                testConfig = options.Value;
                Configuration = configuration;
            }
    
            public IActionResult Index()
            {
                /*
                 * 2种方式
                 * 1、通过 StartUp 提前注册实体类访问
                 * 2、使用 Configuration 实例访问
                 */
                TestConfig test = new TestConfig();
                Configuration.GetSection("ConnectionStrings").Bind(test);
                ViewBag.Test = test;
                return View(testConfig);
            } 
        }

    3、通过加载对应的文件绑定 Configuration 实例

        public class Config
        {
            /// <summary>
            ///  appsettings.json 文件 也可以是任何自定义的 json 文件
            /// </summary>
            private static IConfiguration Configuration;  
            static Config()
            {
                if (Configuration == null)
                {
                    var builder = new ConfigurationBuilder();
                    builder.SetBasePath(Directory.GetCurrentDirectory());
                    builder.AddJsonFile("appsettings.json", false, true);
                    Configuration = builder.Build();
                } 
            }
        } 
    

      

  • 相关阅读:
    番外篇:生产要素最适投入分析(Optimum input of factors)
    docker 9 :镜像存储机制
    docker 8 : 容器资源限制管理
    docker 7 :docker基本操作
    docker 6:容器之间共享磁盘
    docker 5 :挂载的方式
    docker 4 : 容器数据卷使用
    docker 3:创建镜像
    docker 2:Docker镜像增删改查
    docker 1:Docker安装(CentOS8.0)
  • 原文地址:https://www.cnblogs.com/Zing/p/13367296.html
Copyright © 2011-2022 走看看