[.NET Core] 简单读取 json 配置文件
2018-06-18 00:22:19来源:未知 阅读 ()
简单读取 json 配置文件
背景
目前发现网上的 .NET Core 读取 json 格式的配置文件有点麻烦,自己想搞个简单点的。
.NET Core 目前的主流形式是采用 json 格式来存储配置文件信息,跟之前的诸如 app.config 和 web.config 等 xml 形式的配置文件有所区别。
json 文件 demo
appsettings.json:
{ "name": "wen", "age": 26, "family": { "mother": { "name": "娘", "age": 55 }, "father": { "name": "爹", "age": 56 } } }
Nuget 类库引用
需要 Nuget 两个类库:
①Microsoft.Extensions.Configuration
②Microsoft.Extensions.Configuration.Json
核心代码
Program.cs:
using System; using System.IO; using Microsoft.Extensions.Configuration; namespace Demo { class Program { static void Main(string[] args) { //添加 json 文件路径 var builder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json"); //创建配置根对象 var configurationRoot = builder.Build(); //取配置根下的 name 部分 var nameSection = configurationRoot.GetSection("name"); //取配置根下的 family 部分 var familySection = configurationRoot.GetSection("family"); //取 family 部分下的 mother 部分下的 name 部分 var motherNameSection = familySection.GetSection("mother").GetSection("name"); //取 family 部分下的 father 部分下的 age 部分 var fatherAgeSection = familySection.GetSection("father").GetSection("age"); //Value 为文本值 Console.WriteLine($"name: {nameSection.Value}"); Console.WriteLine($"motherName: {motherNameSection.Value}"); Console.WriteLine($"fatherAge: {fatherAgeSection.Value}"); Console.Read(); } } }
测试结果:
直观的关系对比图,可以看到核心就是 GetSection() 方法,每继续往下一个层次获取就再次调用 GetSection() 方法:
备注
别忘了设置 json 文件的属性哦:
相关的文章:
《[.Net Core] 简单读取 json 配置文件》
《[.Net Core] 简单使用 Mvc 内置的 Ioc》
《[.Net Core] 简单使用 Mvc 内置的 Ioc(续)》
《[.Net Core] 在 Mvc 中简单使用日志组件》
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:Windows Server 2008 中iis反向代理设置
下一篇:面试-1
- 加边的无向图--并查集 2020-04-10
- 排兵布阵 2020-02-21
- 二叉树(四)二叉堆 2020-02-03
- 一个proc预编译代码时coredump的问题分析 2019-12-22
- 一款简单的C++猜数字游戏(新手必学) 2019-12-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash