分享web开发知识

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

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

.NET Core的配置文件

发布时间:2023-09-06 01:43责任编辑:傅花花关键词:.NET配置

节选自这里

以Json为例

Json配置,需要安装 Microsoft.Extensions.Configuration.Json 包。

调用AddJsonFile把Json配置的Provider添加到ConfigurationBuilder中。

class Program{ ???public static IConfigurationRoot Configuration { get; set; } ???static void Main(string[] args) ???{ ???????var builder = new ConfigurationBuilder() ???????????.SetBasePath(Directory.GetCurrentDirectory()) ???????????.AddJsonFile("appsettings.json"); ???????Configuration = builder.Build(); ???}}

SetBasePath是指定从哪个目录开始查找appsettings.json。如果appsettings.json在configs目录中,那么调用AddJsonFile应该指定的路径为"configs/appsettings.json"。

下面是演示用的Json配置,后面会讲解所有读取它的方法

{ ?"AppId": "12345", ?"Logging": { ???"IncludeScopes": false, ???"LogLevel": { ?????"Default": "Debug", ?????"System": "Information", ?????"Microsoft": "Information" ???} ?}, ?"GrantTypes": [ ???{ ?????"Name": "authorization_code" ???}, ???{ ?????"Name": "password" ???}, ???{ ?????"Name": "client_credentials" ???} ?]}

读取JSON配置

1.使用Key读取

Configuration["AppId"]; // 结果 12345Configuration["Logging:IncludeScopes"]; // 结果 falseConfiguration["Logging:LogLevel:Default"]; // 结果 DebugConfiguration["GrantTypes:0:Name"]; // 结果 authorization_code

读取嵌套的配置,使用冒号隔开;读取数组形式的配置,使用数组的下标索引,0表示第一个。

如在其他地方用到Configuration的时候,可以通过构造函数注入IConfiguration。

首先配置IConfiguration的依赖

services.AddSingleton<IConfiguration>(Configuration);

然后在通过构造函数注入

private readonly IConfiguration _configuration;public GetConfig(IConfiguration configuration){ ???_configuration = configuration;}

2.使用 GetValue<T> 

这是一个扩展方法,使用它需要安装 Microsoft.Extensions.Configuration.Binder 包。

Configuration.GetValue<int>("AppId", 12345); // 结果 12345Configuration.GetValue<bool>("Logging:IncludeScopes", false); // 结果 falseConfiguration.GetValue<string>("Logging:LogLevel:Default", "Debug"); // 结果 DebugConfiguration.GetValue<string>("GrantTypes:0:Name", "authorize_code"); // 结果 authorization_code

GetValue方法的泛型形式有两个重载,一个是GetValue("key"),另一个可以指定默认值,GetValue("key",defaultValue)。如果key的配置不存在,第一种的结果为default(T),第二种的结果则为指定的默认值。

.NET Core的配置文件

原文地址:https://www.cnblogs.com/shuangzimuchangzhu/p/8459413.html

知识推荐

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