ASP.NET CORE 配置管理
配置管理简单例子(添加内存配置)
using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic; namespace ConsoleCore
{
class Program
{
static void Main(string[] args)
{
var dic = new Dictionary<string, string>()
{
{ "name","wolf"},
{ "age",""},
}; var builder = new ConfigurationBuilder()
.AddInMemoryCollection(dic);
var configuration = builder.Build(); Console.WriteLine($"name:{configuration["name"]}");
Console.WriteLine($"age:{configuration["age"]}");
Console.ReadLine();
}
}
}
Json文件配置
using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic; namespace ConsoleCore
{
class Program
{
static void Main(string[] args)
{
var dic = new Dictionary<string, string>()
{
{ "name","wolf"},
{ "age",""},
}; var builder = new ConfigurationBuilder()
.AddInMemoryCollection(dic)
.AddJsonFile("wolf.json");
var configuration = builder.Build();
//key相同后面覆盖前面,还有configuration格式介绍
Console.WriteLine($"name:{configuration["name"]}");
Console.WriteLine($"age:{configuration["age"]}");
Console.WriteLine($"age:{configuration["list::name"]}");
Console.WriteLine($"age:{configuration["list::age"]}");
Console.WriteLine($"age:{configuration["list::name"]}");
Console.WriteLine($"age:{configuration["list::age"]}");
Console.ReadLine();
}
}
}
{
"name": "wolf1",
"age": 30,
"list": [
{
"name": "wolf2",
"age": 35
},
{
"name": "wolf3",
"age": 37
}
]
}
Bind读取配置到C#实例
using ConsoleCore;
using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic; namespace ConsoleCore
{
class Program
{
static void Main(string[] args)
{
var dic = new Dictionary<string, string>()
{
{ "name","wolf"},
{ "age",""},
}; var builder = new ConfigurationBuilder()
.AddInMemoryCollection(dic)
.AddJsonFile("wolf.json");
var configuration = builder.Build();
var aaa = new AAA();
configuration.Bind(aaa);
Console.WriteLine($"name:{aaa.list[0].name}");
Console.WriteLine($"age:{aaa.list[0].age}");
Console.ReadLine();
}
} public class AA
{
public string name { get; set; }
public string age { get; set; }
} public class AAA
{
public string name { get; set; }
public string age { get; set; } public List<AA> list { get; set; }
}
}
在Core MVC内使用Options
配置热更新
在视图中依赖注入Options
ASP.NET CORE 配置管理的更多相关文章
- ASP.NET Core 中的配置
目录 以键-值对的形式读取配置 多环境配置 读取结构化的配置数据 参考 .NET Core 定义配置的方式不同于之前 NET 版本,之前是依赖于 System.Configuration 的 app. ...
- ASP.NET Core快速入门学习笔记(第2章:配置管理)
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务9:配置介绍 命令行配置 Json文件配置 从配置文件文本到c#对象实例的 ...
- ASP.NET Core 1.0 Configuration 配置管理
documentation: https://docs.asp.net/en/latest/fundamentals/configuration.html github: https://github ...
- ASP.NET Core快速入门(第2章:配置管理)- 学习笔记(转载)
原文地址:https://mp.weixin.qq.com/s?__biz=MjM5NjMzMzE2MA==&mid=2451733443&idx=2&sn=6d01721c5 ...
- ASP.NET Core快速入门(第2章:配置管理)--学习笔记
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务9:配置介绍 命令行配置 Json文件配置 从配置文件文本到c#对象实例的 ...
- ASP.NET Core框架揭秘(持续更新中…)
之前写了一系列关于.NET Core/ASP.NET Core的文章,但是大都是针对RC版本.到了正式的RTM,很多地方都发生了改变,所以我会将之前发布的文章针对正式版本的.NET Core 1.0进 ...
- ASP.NET Core 介绍和项目解读
标签: ASP.NETCore 1. 前言 2. ASP.NET Core 简介 2.1 什么是ASP.NET Core 2.2 ASP.NET Core的特点 2.3 ASP.NET Core 项目 ...
- ASP.Net Core MVC6 RC2 启动过程分析[偏源码分析]
入口程序 如果做过Web之外开发的人,应该记得这个是标准的Console或者Winform的入口.为什么会这样呢? .NET Web Development and Tools Blog ASP.NE ...
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(七)-- 结构化配置
本篇将记录.Net Core里颇有特色的结构化配置的使用方法. 相比较之前通过Web.Config或者App.Config配置文件里使用xml节点定义配置内容的方式,.Net Core在配置系统上发生 ...
随机推荐
- DBUtils--数据库连接池
介绍 DBUtils是一套Python数据库连接池包,并允许对非线程安全的数据库接口进行线程安全包装. pg大概是是PostgreSQL(基于PyGreSQL)数据库,DB是其他数据库 Steady[ ...
- SharePoint 2010 安装错误:请重新启动计算机,然后运行安装程序以继续
一.环境:Windows Server 2008 R2 with sp1,SharePoint 2010 二.问题描述: 正常的安装SharePoint 2010 ,安装完必备组件,并提示所有必备组件 ...
- POJ 1305
毕达哥斯三元组的模板题 练习练习 #include<iostream> #include<cstring> #include<cstdio> #include< ...
- Golang 类型转换,断言和显式强制转换
1 前言 类型转换,可以用断言(只能使用在interface{}类型转换成其它类型)和显式类型强制转换(常规是用于基本类型) 2 代码 //graphql-go func(params graphql ...
- Netty学习4—NIO服务端报错:远程主机强迫关闭了一个现有的连接
1 发现问题 NIO编程中服务端会出现报错 Exception in thread "main" java.io.IOException: 远程主机强迫关闭了一个现有的连接. at ...
- response.setContentType()的String参数及对应类型
response.addHeader("Content-Disposition", "attachment;filename="+ filename); res ...
- 排查linux系统是否被入侵
在日常繁琐的运维工作中,对linux服务器进行安全检查是一个非常重要的环节.今天,分享一下如何检查linux系统是否遭受了入侵? 一.是否入侵检查 1)检查系统日志 检查系统错误登陆日志,统计IP重试 ...
- linux学习之软件包安装
本学习基于redhat系统或者centos系统 一.软件包的安装 1.rpm安装,rpm安装分为俩种,一种是直接安装xxx.rpm包,另一种是通过yum安装一系列的rpm包. #推荐使用yum安装,y ...
- a标签的4种状态及设置CSS
a:link 超链接的默认样式 a:visited 访问过的(已经看过的)链接样式 a:hover 鼠标处于鼠标悬停状态的链接样式 a:active 当鼠标左键按下时,被激活(就是鼠标按下去那一瞬间) ...
- 信息摘要算法之七:SHA在区块链中的应用
最近几年比特币的火爆带动了人们对区块链技术的研究.当然我们在这里并不讨论区块链技术本身,而是讨论一下区块链中的SHA算法的应用.对于SHA系列算法我们已经在前面作了说明,在这里也不再重复. 1.区块链 ...