.net core mvc appsettings.json配置文件的使用
配置文件的使用主要是两种用法
1.直接使用弱类型的数据
2.使用强类型的数据 (将配置的数据映射到类)
直接使用弱类型的数据
在appsetings.json文件中先新建两个节点 TestObj节点用来实现弱类型的读取 TestObjTwo用来实现强类型的映射
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*",
"TestObj": {
"ParamOne": "asp.net"
},
"TestObjTwo": {
"ParamOne": "asp.net",
"ParamTwo": "asp.netCore",
"Num": 60
}
}
对于弱类型的字符串获取,需要使用IConfiguration接口类型的实例Configuration
添加属性 public IConfiguration Configuration { get; }
public HomeController(ILogger<HomeController> logger, IOptions<TestOptions> t, IConfiguration configuration)
{
_logger = logger;
T = t;
Configuration = configuration;
//弱类型
var Param = Configuration["TestObj:ParamOne"];
//强类型
var ParamTwo = T.Value.ParamTwo;
var ParamOne = T.Value.ParamOne;
var Num = T.Value.Num;
}
通过构造函数注入IConfiguration configuration
使用 var Param = Configuration["TestObj:ParamOne"]; 读取弱类型数据
使用强类型的数据 (将配置的数据映射到类)
新建一个类 用来作为要映射到的类 类应该按照jappsetings.json配置文件中的模型来创建 参数类型也要对应
public class TestOptions
{
public int Num { get; set; }
public string ParamTwo { get; set; }
public string ParamOne { get; set; }
}
在ConfigureServices中添加配置服务
public void ConfigureServices(IServiceCollection services)
{
services.AddControllersWithViews();
services.Configure<TestOptions>(Configuration.GetSection("TestObjTwo"));
}
homecontroller中添加相应的属性 public IOptions<TestOptions> T { get; }
注入到构造函数
public HomeController(ILogger<HomeController> logger, IOptions<TestOptions> t, IConfiguration configuration)
{
_logger = logger;
T = t;
Configuration = configuration;
//弱类型
var Param = Configuration["TestObj:ParamOne"];
//强类型
var ParamTwo = T.Value.ParamTwo;
var ParamOne = T.Value.ParamOne;
var Num = T.Value.Num;
}
直接使用强类型映射 也可以得到appsetings.json中的数据
.net core mvc appsettings.json配置文件的使用的更多相关文章
- Asp .Net Core 读取appsettings.json配置文件
Asp .Net Core 如何读取appsettings.json配置文件?最近也有学习到如何读取配置文件的,主要是通过 IConfiguration,以及在Program中初始化完成的. ...
- ASP.NET Core读取appsettings.json配置文件信息
1.在配置文件appsettings.json里新增AppSettings节点 { "Logging": { "LogLevel": { "Defau ...
- asp.net core 读取Appsettings.json 配置文件
Appsettingsjson 配置定义实体在StartUp时读取配置信息修改你的Controller通过构造函数进入配置信息总结Appsettings.json 配置很明显这个配置文件就是一个jso ...
- ASP.NET Core 根据环境变量支持多个 appsettings.json配置文件 (开发和生产)
新建一个项目,web根目录会出现一个 appsettings.json 配置文件, 此时添加--新建项,输入 appsettings.Development.json 再新增一个,appsetti ...
- [.NET Core] 简单读取 json 配置文件
简单读取 json 配置文件 背景 目前发现网上的 .NET Core 读取配置文件有点麻烦,自己想搞个简单点的. .NET Core 已经不使用之前的诸如 app.config 和 web.conf ...
- 【NET Core】.NET Core中读取json配置文件
在.NET Framework框架下应用配置内容一般都是写在Web.config或者App.config文件中,读取这两个配置文件只需要引用System.Configuration程序集,分别用 Sy ...
- .net core 读取appsettings.json乱码
.net core 读取配置文件乱码:vs2019读取appsettings.json乱码问题; .net core 读取appsettings.json乱码问题;用notepad++或者其他编辑器打 ...
- .net core之编辑json配置文件
.net core之编辑json配置文件 引言 最近在具体项目开发应用中,项目采用的json格式配置文件,配置文件的加载采用的IConfiguration接口对象进行的管理,这是.net standa ...
- .net core mvc 类库读取配置文件
appsettings.json,给类库项目引入 Microsoft.Extensions.Configuration 和 Microsoft.Extensions.Configuration.J ...
随机推荐
- C语言编程入门之--第六章C语言控制语句
导读:本章带读者理解什么是控制语句,然后逐个讲解C语言常用的控制语句,含有控制语句的代码量多起来后就要注意写代码的风格了,本章末节都是练习题,大量的练习才能掌握好控制语句的使用. 6.1 什么是控制语 ...
- C#数据结构-双向链表
链表的概念以及链表与数组的差异不做过多的叙述,相信大家都耳熟能详,这里以c#语言实现简单的双向链表,作为备用,记录下~ public class Node<T> { private Nod ...
- C#实现迭代器
迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各种元素,而又不暴露该对象的内部表示.C#中使用IEnumerator接口实现,Java中使用Iterator接口实现,其中原理都差 ...
- MeteoInfoLab脚本示例:天气现象符号
天气现象符号分布图实际就是散点图,可以用scatterm函数绘制,但之前需要创建天气符号图例,用weatherspec函数.如果只需要绘制某些天气现象(比如雾.霾),可以给出相应的天气符号序号列表(可 ...
- Go语言基础知识01-用Go打个招呼
每一种编程语言,从读一本好书开始 每一种编程语言,也从Helloworld开始 1. 环境准备 1.1 安装golang 在Ubuntu下,直接输入命令可以安装最新版本: $ sudo apt-get ...
- php-fpm 高并发 参数调整 转
工作中经常会遇到会给客户配置服务器,其中有的客户还会有并发量要求,其中也会必须要用负载均衡承载压力的.增加服务器数量肯定能有效的提升服务器承载能力,但只有根据目前已有配置设置好单台服务器才能更好的发挥 ...
- linux mount挂载命令
[root@localhost src]# mount 查询系统中已经挂载的设备 [root@localhost src]# mount -a 依据配置文件 /etc/fstab的内容,自动挂载
- php 注册器模式 工厂模式
<?php /** * 注册器模式 * 全局共享和交换对象 */ class Register { public static $objects; // 定义全局数组 // 保存对象到全局数组 ...
- GDB常用调试命令(一)
GDB是UNIX及UNIX-like下的调试工具,通常gdb使用前置条件:编译时加入debug信息,这里指的是C++. gcc/g++调试选项 gcc/g++是在编译时加入-g,-g分4个等级: ...
- Ⅰ Introduction to Reinforcement Learning
Dictum: To spark, often burst in hard stone. -- William Liebknecht 强化学习(Reinforcement Learning)是模仿人 ...