zoukankan      html  css  js  c++  java
  • .net core 3.0 实现读取appsettings.json配置文件

    第一种直接放到通用类库,那里想调往那调。

    1.编辑我们的appsettings.json文件

    复制代码
    {
      "Logging": {
        "LogLevel": {
          "Default": "Information",
          "Microsoft": "Warning",
          "Microsoft.Hosting.Lifetime": "Information"
        }
      },
      "ConnectionStrings": {
        "TestConnection": "server=123;User ID=jiyuwu;Password=123456;database=jiyuwu;",
        "Redis": "127.0.0.1:6379"
      },
      "AllowedHosts": "*"
    }
    复制代码

     2.通用类库Common添加引用类库Microsoft.Extensions.Configuration.Json并添加AppSettingsHelper.cs

    Install-Package Microsoft.Extensions.Configuration.Json -Version 3.0.0

    复制代码
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.Json;
    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace Common
    {
            public class AppSettingsHelper
            {
                public static IConfiguration Configuration { get; set; }
                static AppSettingsHelper()
                {
                    //ReloadOnChange = true 当appsettings.json被修改时重新加载            
                    Configuration = new ConfigurationBuilder()
                    .Add(new JsonConfigurationSource { Path = "appsettings.json", ReloadOnChange = true })
                    .Build();
                }
    
            }
        }
    复制代码

    3.调用

    string sqlString= AppSettingsHelper.Configuration.GetConnectionString("TestConnection");
    string sqlString1 = AppSettingsHelper.Configuration["Logging:LogLevel:Default"];

    第二种直接读文件调用。

    1.引用类库并读取文件获取配置

    Install-Package Microsoft.Extensions.Configuration.Json -Version 3.0.0
    复制代码
    public IConfiguration Configuration;
    public void TestAppSettings()
            {
                var builder = new ConfigurationBuilder()
                   .SetBasePath(Directory.GetCurrentDirectory())
                   .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
                Configuration = builder.Build();
                string sqlString2 = Configuration["Logging:LogLevel:Default"];
            }
    复制代码

    简单介绍下原理:

    我们通过ConfigurationBuilder对象来创建ConfigurationRoot对象,并用其来读取配置。SetBasePath()方法是用来设置我们配置对象需要的配置文件的基础路径,比如我们将基础路径设置为C:TemplateCoreTemplateCore,那么他读取我们的配置文件appsettings.json的路径将是C:TemplateCoreTemplateCoreappsettings.json

    开源地址:https://github.com/jiyuwu/TemplateCore

    测试浏览效果:http://127.0.0.1:1994/home/TestAppSettings

    转自:https://www.cnblogs.com/jiyuwu/p/11776044.html

  • 相关阅读:
    Sum Root to Leaf Numbers
    Sum Root to Leaf Numbers
    Sort Colors
    Partition List
    Binary Tree Inorder Traversal
    Binary Tree Postorder Traversal
    Remove Duplicates from Sorted List II
    Remove Duplicates from Sorted List
    Search a 2D Matrix
    leetcode221
  • 原文地址:https://www.cnblogs.com/PrintY/p/13289443.html
Copyright © 2011-2022 走看看