配置管理简单例子(添加内存配置)

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 配置管理的更多相关文章

  1. ASP.NET Core 中的配置

    目录 以键-值对的形式读取配置 多环境配置 读取结构化的配置数据 参考 .NET Core 定义配置的方式不同于之前 NET 版本,之前是依赖于 System.Configuration 的 app. ...

  2. ASP.NET Core快速入门学习笔记(第2章:配置管理)

    课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务9:配置介绍 命令行配置 Json文件配置 从配置文件文本到c#对象实例的 ...

  3. ASP.NET Core 1.0 Configuration 配置管理

    documentation: https://docs.asp.net/en/latest/fundamentals/configuration.html github: https://github ...

  4. ASP.NET Core快速入门(第2章:配置管理)- 学习笔记(转载)

    原文地址:https://mp.weixin.qq.com/s?__biz=MjM5NjMzMzE2MA==&mid=2451733443&idx=2&sn=6d01721c5 ...

  5. ASP.NET Core快速入门(第2章:配置管理)--学习笔记

    课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务9:配置介绍 命令行配置 Json文件配置 从配置文件文本到c#对象实例的 ...

  6. ASP.NET Core框架揭秘(持续更新中…)

    之前写了一系列关于.NET Core/ASP.NET Core的文章,但是大都是针对RC版本.到了正式的RTM,很多地方都发生了改变,所以我会将之前发布的文章针对正式版本的.NET Core 1.0进 ...

  7. 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 项目 ...

  8. ASP.Net Core MVC6 RC2 启动过程分析[偏源码分析]

    入口程序 如果做过Web之外开发的人,应该记得这个是标准的Console或者Winform的入口.为什么会这样呢? .NET Web Development and Tools Blog ASP.NE ...

  9. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(七)-- 结构化配置

    本篇将记录.Net Core里颇有特色的结构化配置的使用方法. 相比较之前通过Web.Config或者App.Config配置文件里使用xml节点定义配置内容的方式,.Net Core在配置系统上发生 ...

随机推荐

  1. ES6学习笔记六(Iterator和for..of)

    { let arr=['hello','world']; let map=arr[Symbol.iterator](); //返回false时继续执行,true停止执行! console.log(ma ...

  2. 题解-AtCoder Code-Festival2017qualA-E Modern Painting

    Problem CODE-FESTIVAL 2017 qual A 洛谷账户的提交通道 题意:有一个\(n\)行\(m\)列的方格,在边界外有可能有机器人(坐标为\((0,x),(n+1,x),(x, ...

  3. 028_shell脚本递归求值

    一. #!/bin/sh factorial() { if [ "$1" -gt "1" ]; then i=`expr $1 - 1` j=`factoria ...

  4. linux shell中 if else以及大于、小于、等于逻辑表达式

    在linux shell编程中,大多数情况下,可以使用测试命令来对条件进行测试,这里简单的介绍下,方便需要的朋友 比如比较字符串.判断文件是否存在及是否可读等,通常用"[]"来表示 ...

  5. 51nod--1212 最小生成树

    题目: 1212 无向图最小生成树 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 N个点M条边的无向连通图,每条边有一个权值,求该图的最小生成树. Inpu ...

  6. PHP--php时间差8个小时的问题

    自PHP5.0开始,用PHP获取系统时间时,时间比当前时间少8个小时.原因是PHP.ini中没有设置timezone时,PHP是使用的UTC时间,所以在中国时间要少8小时. 解决办法: 1.在PHP. ...

  7. Expm 10_1 带负权值边的有向图中的最短路径问题

    [问题描述] 对于一个带负权值边的有向图,实现Bellman-Ford算法,求出从指定顶点s到其余顶点的最短路径,并判断图中是否存在负环. package org.xiu68.exp.exp10; p ...

  8. 洛谷P4707 重返现世 [DP,min-max容斥]

    传送门 前置知识 做这题前,您需要认识这个式子: \[ kthmax(S)=\sum_{\varnothing\neq T\subseteq S}{|T|-1\choose k-1} (-1)^{|T ...

  9. 信息摘要算法之七:SHA在区块链中的应用

    最近几年比特币的火爆带动了人们对区块链技术的研究.当然我们在这里并不讨论区块链技术本身,而是讨论一下区块链中的SHA算法的应用.对于SHA系列算法我们已经在前面作了说明,在这里也不再重复. 1.区块链 ...

  10. C#将DLL嵌入到exe当中

    1.选中项目文件,找到Resources.resx,双击Resources.resx,然后添加文件(选择需要的dll文件),点击确定,项目下会自动生成一个Resources文件夹,里面包含添加dll. ...