.Net Core配置文件读取整理
一 、配置文件说明
1.配置,主要是 指在程序中使用的一些特殊参数,并且大多数 仅在程序启动的之后指定不需要修改。
2.在以前.Net项目中配置文件主要指app.config或web.config,但是在.Net Core中对 配置 进行 了更 广泛的定义。
从现在的版本来看 使用json作为配置优先使用 。
MemoryConfigurationProvider
EnvironmentVariablesConfigurationProvider
CommandLineConfigurationProvider
JsonConfigurationProvider
XmlConfiguationProvider
IniConfigurationProvider
自定义ConfigurationProvider
3.配置的树结构主要 有Configuration、ConfigurationProvider和ConfigurationBuilder三个核心 对象。
Configuration反之实现 IConfiguration接口的对象用于对接点的获取 ,例如:ConfigurationRoot,ConfigurationSection.
ConfigurationProvider是对实现IConfigurationProvider接口的所有类型及其 对象的统称 ,用于 将原始结构转换成物理结构。
ConfigurationBuilder泛指实现了IConfigurationBuilder接口 的类型及其对象,它在配置 类型中就是 利用 注册的 ConfigurationProvider提取转换成数据字典 的配置并创建 对应的Configuration对象,具体来说 创建的是一个 实现 配置树的ConfigurationRoot对象 。
4.新版的配置系统,提供了配置同步功能等
二、Json配置文件读取示例
1.对json配置文件读取操作依赖的Nuget包
Install-Package Microsoft.Extensions.Configuration
Install-Package Microsoft.Extensions.Configuration.Json
2.加载配置文件,创建Configuration对象
IConfigurationBuilder builder = new ConfigurationBuilder();
//不指定配置文件路径,则默认是 当前Dll的目录
//builder.SetBasePath(@"K:\CoreSolution\ConfigOne\ConfigOne");
/*
* 还有 一种处理方式就是,将本文件每次 生成是输出到生成文件中
* 右键文件属性将不复制改成‘始终复制’
*/
builder.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
//获取根节点
IConfigurationRoot Configuration = builder.Build();
3.专门用于配置数据库链接字符串
//转门用来配置链接字符串的节点 ConnectionStrings
string conStrings = Configuration.GetConnectionString("SqlServerConnection");
Console.WriteLine(conStrings);
{
"ConnectionStrings": {
"SqlServerConnection": "Server=.;Database=db_wkmvc;User ID=sa_wkmvc;Password=123456;"
},
"Name": "test"
}
4.获取节点值
//获取节点值
IConfigurationSection section1 = Configuration.GetSection("Name");
Console.WriteLine(section1.Value);
//获取节点 对象
IConfigurationSection section2 = Configuration.GetSection("ConnectionStrings");
IConfigurationSection section3 = section2.GetSection("SqlServerConnection");
Console.WriteLine(section3.Value); //如果节点不存在则返回空字符串
IConfigurationSection section4 = Configuration.GetSection("NoName");
Console.WriteLine(section4.Value);
section4.Value = "张三丰";
更多:
EF Core 1.0 和 SQLServer 2008 分页的问题
更多配置参考:http://www.cnblogs.com/artech/p/asp-net-core-config-01.html
.Net Core配置文件读取整理的更多相关文章
- .Net Core 配置文件读取 - IOptions、IOptionsMonitor、IOptionsSnapshot
原文链接:https://www.cnblogs.com/ysmc/p/16637781.html 众所周知,appsetting.json 配置文件是.Net 的重大革新之心,抛开了以前繁杂的xml ...
- net core体系-web应用程序-4net core2.0大白话带你入门-6asp.net core配置文件
asp.net core配置文件 读取配置文件 asp.net core使用appsettings.json代替传统.net framework的web.config中的<appSettin ...
- VS2012中,C# 配置文件读取 + C#多个工程共享共有变量 + 整理using语句
(一) C# 配置文件读取 C#工程可以自动生成配置文件,以便整个工程可以使用设置的配置进行后续的处理工作. 1. 首先,右键工程文件-->Properties -->settings-- ...
- ASP.NET Core开发-读取配置文件Configuration
ASP.NET Core 是如何读取配置文件,今天我们来学习. ASP.NET Core的配置系统已经和之前版本的ASP.NET有所不同了,之前是依赖于System.Configuration和XML ...
- NET Core开发-读取配置文件Configuration
ASP.NET Core开发-读取配置文件Configuration ASP.NET Core 是如何读取配置文件,今天我们来学习. ASP.NET Core的配置系统已经和之前版本的ASP.NE ...
- [.NET Core] 简单读取 json 配置文件
简单读取 json 配置文件 背景 目前发现网上的 .NET Core 读取配置文件有点麻烦,自己想搞个简单点的. .NET Core 已经不使用之前的诸如 app.config 和 web.conf ...
- net core 小坑杂记之配置文件读取(不定期更新)
其实很早就想写了,原想等积累差不多了再写的,但是发现遇到一个当时记下效果会比较好,所以就不定期更新这个系列了,后面获取会整个整理一下. 此篇记载net core入门时踩的一些坑,网上教程太少了,也不规 ...
- 【NET Core】.NET Core中读取json配置文件
在.NET Framework框架下应用配置内容一般都是写在Web.config或者App.config文件中,读取这两个配置文件只需要引用System.Configuration程序集,分别用 Sy ...
- ASP.NET Core开发-读取配置文件Configuration appsettings.json
https://www.cnblogs.com/linezero/p/Configuration.html ASP.NET Core 是如何读取配置文件,今天我们来学习. ASP.NET Core的配 ...
随机推荐
- 018 jquery中的事件
一:事件 1.Dom的两种加载方式 2.程序 略 二:事件绑定 1.事件绑定介绍 2.程序一(使用click的原始方式) <!DOCTYPE html> <html> < ...
- Could not resolve com.android.support:appcompat-v7:28.0.0 错误处理
20181008 总是出现错误 Could not resolve com.android.support:appcompat-v7:28.0.0 1.先是怀疑前些天降级了jdk 1.8 ,所以重 ...
- 《阿里巴巴Java开发手册》扫描插件正式发布--插件安装和使用分析
"不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!" 阿里巴巴于10月14日上午9:00在杭州云栖大会<研发效能峰会>上,正式发布<阿里巴巴Java开发 ...
- iOS 覆盖率检测原理与增量代码测试覆盖率工具实现
背景 对苹果开发者而言,由于平台审核周期较长,客户端代码导致的线上问题影响时间往往比较久.如果在开发.测试阶段能够提前暴露问题,就有助于避免线上事故的发生.代码覆盖率检测正是帮助开发.测试同学提前发现 ...
- 【Ray Tracing The Next Week 超详解】 光线追踪2-1
Preface 博主刚放假回家就进了医院,今天刚完事儿,来续写第二本书 Ready 我们来总结一下上一本书的笔记中我们的一些规定 1. 数学表达式 我们采用小写粗黑体代表向量,大写粗黑体代表矩阵, ...
- webshpere 节点&环境分析
场景名称:LotusConnections: 场景下有一个节点:feb02Node1 节点下有一个应用服务器 LotusConnections server.
- python基础之return,参数
函数的返回值 1.什么是返回值: 返回值是一个函数的处理结果 2.为什么要有返回值 如果需要在程序中拿到函数的处理结果,做进一步的处理,则需要函数必须有返回值 3.函数返回值的应用: 函数的返回值用r ...
- hdu 4452 37届金华赛区 K题
题意:给一个n*n的格子,1在左上角,2在右下角,每个人有一个初始速度和方向,若遇到边缘,则朝相反方向前进,若两个人相遇则交换方向(注意方向改变后,人仍然需要移动),同时,每个人每过t1,t2时间就会 ...
- 2010-2011 ACM-ICPC, NEERC, Moscow Subregional Contest Problem J. Joke 水题
Problem J. Joke 题目连接: http://codeforces.com/gym/100714 Description The problem is to cut the largest ...
- ZOJ 3765 Lights (伸展树splay)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3765 Lights Time Limit: 8 Seconds ...