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在配置系统上发生 ...
随机推荐
- React组件State提升(译)
译自:https://reactjs.org/docs/lifting-state-up.html (适当进行了裁减) 通常我们会碰到这样的情况,当某个组件的state数据改变时,几个React组件同 ...
- hibernate框架学习之增删改查helloworld
插入数据删除数据修改数据查询单条数据查询多条数据 HelloWorldApp.java package cn.itcast.h3.helloworld; import org.hibernate.Se ...
- Go学习笔记(只有链接)
Go学习笔记 link: https://blog.csdn.net/u011304970/article/details/69908641 仅作为记录使用.
- sublime text3 golang插件(golang build)
1 前言 先前条件: sublime text3:下载地址:http://www.sublimetext.com/3 golang:下载地址:https://golang.google.cn/dl/ ...
- 粘包-socketserver实现并发
- jqgrid获取数据条数
function getResult() {//获取结果结合的函数,可以通过此函数获取查询后匹配的所有数据行. var o = jQuery("#jqgrid"); ...
- Swift 学习- 02 -- 基础部分2
class NamedShape{ var numberOfSides: Int = 0 var name: String init(name: String) { self.name = name ...
- Confluence 6 降级你的许可证
如果你决定降级你 Confluence 的许可证而削减你的许可证开支,你需要确定当前已经直排的用户许可证数量(在用户许可证页面中)要少于你希望应用的新的许可证的允许用户数量,在你应用新许可证的时候. ...
- 纯css使用线性渐变实现滚动进度条(来自于微信前端早读课)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Mysql哪些字段适合建立索引
数据库建立索引常用的规则如下: 1.表的主键.外键必须有索引: 2.数据量超过300的表应该有索引: 3.经常与其他表进行连接的表,在连接字段上应该建立索引: 4.经常出现在Where子句中的字段,特 ...