分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

.Net core下的配置设置(一)——Configuration

发布时间:2023-09-06 02:35责任编辑:彭小芳关键词:配置

ASP.NET Core 中提供了一个Configuration 包,用以应用配置基于配置提供程序建立的键值对。这里以json文件配置的方式,简单的介绍一下它的用法。

首先定义一个配置文件appsettings.json:

{
    "key1": "value1",
    "key2": -1,
        "subsection":  {
            "key1": "value2",
            "key2": -5
    }
}

如下是基本的用法:

var configBuilder = new ConfigurationBuilder().AddJsonFile("appsettings.json");var config ???????= configBuilder.Build();var value1 = config.GetValue<string>("key1");var value2 = config.GetValue<int>("key2");

.net core将配置操作分布在ConfigurationBuilder和IConfigurationRoot两个对象了,其中ConfigurationBuilder用来配置数据源,IConfigurationRoot则提供统一的读取操作。

数据源:

配置提供程序将配置数据从各种配置源读取到键值对,它支持的配置方式比较多,常见的就有:

  • 命令行参数
  • 环境变量
  • 内存中的 .NET 对象
  • 设置文件(Ini、 xm、,Json)
  • 自定义提供程序

基本上常用的配置数据源都支持了,支持多数据源配置,也支持自定义数据源,非常灵活而方便。具体的配置方式可以参考官方文档ASP.NET Core 中的配置。

CreateDefaultBuilder

为了简化配置,Asp.net core中提供了一个函数CreateDefaultBuilder隐式提供了对ConfigurationBuilder的调用,顺序提供了对如下配置文件的配置加载:

  • appsettings.json。
  • appsettings.{Environment}.json。
  • 应用在使用入口程序集的 Development 环境中运行时的机密管理器。
  • 环境变量。
  • 命令行参数

更多细节可以参考官方文档:设置主机

读取配置

前面的例子中演示了基本的读取方式: 

var value1 = config.GetValue<string>("key1");var value2 = config.GetValue<int>("key2");

除了这种方式外,也可以通过Bind方法按照对象的方式读取: 

class ConfigData{ ???public string Key1 { get; set; } ????public int Key2 { get; set; }}var cfgData = new ConfigData();config.Bind(cfgData);

 另外,对于子节点的配置,也可以通过GetSection函数定位到子节点,然后按照前面的方式读取,例如: 

var value1 = config.GetSection("subsection").GetValue<string>("key1");var cfgData = config.GetSection("subsection").Get<ConfigData>();

 参考文章

ASP.NET Core 中的配置

.Net core下的配置设置(一)——Configuration

原文地址:https://www.cnblogs.com/TianFang/p/10585714.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved