1.在有注入的地方直接使用构造函数注入

Controller中直接使用,使用引用using Microsoft.Extensions.Configuration;

private IConfiguration configuration;
public HomeController(IConfiguration config)
{
    configuration = config;
}
//读取 
var testconfig = configuration["MongoDB:DataBase"];

其他已经注入的类库中,与上面一样:

 private IConfiguration configuration;
 public UserService(IConfiguration config)
        {
            configuration = config;
        }
//读取
 var testconfig = configuration["MongoDB:DataBase"];

2.不方便用注入的地方,如公共工具类库中

使用自定义函数读取appsetting.json配置文件(不限于此种文件格式)

 private static IConfiguration configuration = null;
        //静态方法
 public static IConfiguration GetConfiguration()
 {
    if (configuration == null)
     {
        configuration = new     
                 ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory())
                .Add(new JsonConfigurationSource { Path = "appsettings.json", 
                     ReloadOnChange = true })
                .Build();
      }
    return configuration;
}
//使用自定义方法读取 
public  string DataBase { get; set; } = AppSettingHelper.GetConfiguration().GetSection("MongoDB:DataBase").Value;

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐