杨中科 配置系统

1、配置系统入门

说明

1、传统Web.config配置的缺点,之前DI讲到过
2、为了兼容,仍然可以使用Web.config和ConfigurationManager类,但不推荐。
3、.NET 中的配置系统支持丰富的配置源,包括文件(json、xml、ini等)、注册表、环境变量、命令行、Azure Key Vault等,还可以配置自定义配置源。画以跟踪配置的改变,可以按照优先级覆盖。

Json文件配置

1、创建一个json文件,文件名随意,比如config.json,设置“如果较新则复制”。参考备注2、NuGet安装Microsoft.Extensions.Configuration和Microsoft.Extensions.Configuration.Json.
3、编写代码,先用简单的方式读取配置。

示例

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

读取配置原始方法

ConfigurationBuilder configBuilder= new ConfigurationBuilder();
configBuilder.AddJsonfile(
"config.json",optional: false, reloadOnChange: false);IConfigurationRoot config= configBuilder.Build();
string name = config["name"];
string proxyAddress = config.GetSection("proxy:address").Value;

optional参数表示这个文件是否可选。
初学时,建议optional设置为false,这样写错了的话能够及时发现。
reloadonchange参数表示如果文件修改了,是否重新加载配置

在这里插入图片描述

运行结果:

在这里插入图片描述

绑定读取配置(*)

1、可以绑定一个类,自动完成配置的读取,
2、NuGet安装:Microsoft.Extensions.Configuration.Binder
3、Server server = configRoot.GetSection(“proxy”).Get()

修改配置文件
在这里插入图片描述

添加类
在这里插入图片描述

安装包
在这里插入图片描述
修改方法
在这里插入图片描述
运行结果:
在这里插入图片描述
继续改进:
在这里插入图片描述
在这里插入图片描述
运行结果
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/670321.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

序列化和反序列化、pytest-DDT数据驱动

序列化 序列化就是将对象转化成文件 python转成json import jsondata {"数字": [1, 1.1, -1],"字符串": ["aaaa", bbbb],"布尔值": [True, False],"空值": None,"列表": [[1, 2, 3], [4, 5, 6], [7, 8, 9]],&…

OpenCV/C++:点线面相关计算(二)

接续,继续更新 OpenCV/C:点线面相关计算_线面相交的点 代码计算-CSDN博客文章浏览阅读1.6k次,点赞2次,收藏12次。OpenCV处理点线面的常用操作_线面相交的点 代码计算https://blog.csdn.net/cd_yourheart/article/details/125626239 目录 1、…

git的奇特知识点

展示帮助信息 git help -gThe common Git guides are:attributes Defining attributes per pathcli Git command-line interface and conventionscore-tutorial A Git core tutorial for developerscvs-migration Git for CVS usersdiff…

Unity_修改天空球

Unity_修改天空球 Unity循序渐进的深入会发现可以改变的其实很多,剖开代码逻辑,可视化的表现对于吸引客户的眼球是很重要的。尤其对于知之甚少的客户,代码一般很难说服客户,然表现确很容易。 非代码色彩通才,持续学习…

《Docker极简教程》--Docker基础--Docker的基本概念

在这篇文章中我们先大致的了解以下Docker的基本概念,在后续的文章中我们会详细的讲解这些概念以及使用。 一、容器(Container) 1.1 容器的定义和特点 容器的定义 容器是一种轻量级、可移植的软件打包技术,用于打包应用及其依赖项和运行环境&#xff0c…

[英语学习][27][Word Power Made Easy]的精读与翻译优化

[序言] 译者的这次翻译非常好. 对what与从句的嵌套用法, 进行了精准的翻译. 这次的记录, 也是对我自己的一次翻译经验的提升. 但是唯一遗憾的是"derivation"没有翻译好. [英文学习的目标] 提升自身的英语水平, 对日后编程技能的提升有很大帮助. 希望大家…

STM32F1 引脚重映射功能

STM32 端口引脚重映射 文章目录 STM32 端口引脚重映射前言1、查阅芯片数据手册1.1 串口引脚重映射描述 2、代码部分2.1 核心代码部分 3、实验现象4、总结 前言 在写程序时遇到想要的端口功能,而这个引脚又被其它的功能占用了无法删除掉或直接使用,这种情…

蓝桥杯----凑算式

这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。 比如: 68/3952/714 就是一种解法, 53/1972/486 是另一种解法. 这个算式一共有多少种解法? 注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。

Leetcode—42. 接雨水【困难】

2024每日刷题&#xff08;112&#xff09; Leetcode—42. 接雨水 空间复杂度为O(n)的算法思想 实现代码 class Solution { public:int trap(vector<int>& height) {int ans 0;int n height.size();vector<int> l(n);vector<int> r(n);for(int i 0; …

javaEE - 24( 20000 字 Servlet 入门 -2 )

一&#xff1a; Servlet API 详解 1.1 HttpServletResponse Servlet 中的 doXXX 方法的目的就是根据请求计算得到相应, 然后把响应的数据设置到HttpServletResponse 对象中. 然后 Tomcat 就会把这个 HttpServletResponse 对象按照 HTTP 协议的格式, 转成一个字符串, 并通过S…

2024数据分析管理、数字经济与教育国际学术会议(ICDAMDEE2024)

会议简介 2024年数据分析管理、数字经济和教育国际学术会议&#xff08;ICDAMDEE 2024&#xff09;将在武汉举行。会议不仅展示了来自世界各地的研究专家围绕数据分析管理、数字经济和教育的最新科研成果&#xff0c;还为来自不同地区的代表们提供了面对面的交流意见和实验经验…

[C++] opencv + qt 创建带滚动条的图像显示窗口代替imshow

在OpenCV中&#xff0c;imshow函数默认情况下是不支持滚动条的。如果想要显示滚动条&#xff0c;可以考虑使用其他库或方法来进行实现。 一种方法是使用Qt库&#xff0c;使用该库可以创建一个带有滚动条的窗口&#xff0c;并在其中显示图像。具体步骤如下&#xff1a; 1&…

ES6扩展运算符——三个点(...)用法详解

目录 1 含义 2 替代数组的 apply 方法 3 扩展运算符的应用 &#xff08; 1 &#xff09;合并数组 &#xff08; 2 &#xff09;与解构赋值结合 &#xff08; 3 &#xff09;函数的返回值 &#xff08; 4 &#xff09;字符串 &#xff08; 5 &#xff09;实现了 Iter…

耳机空间音频头部相关传递函数(HRTF)设计方法与空间音频渲染

加我微信hezkz17可以申请加入数字音频系统研究开发交流答疑群,加群附加赠送车载DSP音频项目核心开发资料(包含声场,最佳听音位),TWS降噪蓝牙耳机项目资料,空间音频源码 在空间音频的应用里最常见的一种就是“听音辨位”。比如在很多射击游戏中,我们能够通过耳机中目标的…

Java实现教学过程管理系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 教师端2.2 学生端2.3 微信小程序端2.3.1 教师功能如下2.3.2 学生功能如下 三、系统展示 四、核心代码4.1 查询签到4.2 签到4.3 查询任务4.4 查询课程4.5 生成课程成绩 六、免责说明 一、摘要 1.1 项目介绍 基于JAVAVu…

Python学习路线 - Python高阶技巧 - PySpark案例实战

Python学习路线 - Python高阶技巧 - PySpark案例实战 前言介绍Spark是什么Python On SparkPySparkWhy PySpark 基础准备PySpark库的安装构建PySpark执行环境入口对象PySpark的编程模型 数据输入RDD对象Python数据容器转RDD对象读取文件转RDD对象 数据计算map方法flatMap方法red…

数据结构高级算法

目录 最小生成树 Kruskal(克鲁斯卡尔)(以边为核心) 9) 不相交集合(并查集合) 基础 Union By Size 图-相关题目 4.2 Greedy Algorithm 1) 贪心例子 Dijkstra Prim Kruskal 最优解(零钱兑换)- 穷举法 Leetcode 322 最优解(零钱兑换)- 贪心法 Leetcode 322 3)…

opensuse安装百度Linux输入法

前言 Linux下有输入法&#xff0c;拼音&#xff0c;百度的都有&#xff0c;但是用起来总感觉不如在windows下与安卓中顺手。 目前搜狗与百度都出了Linux的输入法&#xff0c;但是没有针对OpenSUSE的&#xff0c;只有ubuntu/deepin/UOS的安装包。 本文主要讲的如何把百度Linux输…

Java 获取 Linux服务器主机名称、内网ip、cpu使用率、内存使用率、磁盘使用率、JVM使用率

下面的代码直接打包带走使用 1、pom文件依赖 <dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version> <!-- 请根据实际情况检查最新版本 --></dependency>2、代码 package…

51-22 BEVFormer、BEVFormer v2,Occupancy占用网络灵感源泉 论文精读

今天要读论文的是BEVFormer&#xff0c;有人说这是新一代自动驾驶感知融合的基石&#xff0c;有人说是后续Occupancy Network占用网络工作的灵感源泉。我们从题目《通过时空transformer从多摄像头图像中学习BEV表示》来看&#xff0c;这应该是BEV开山之作LSS论文的姊妹篇。 本…