ASP.NET Core 配置文件(无处不在的依赖注入)
2017-08-16 12:02
861 查看
前烟:
.NET Core 中取消了以往的 XML 节点配置文件,改用了 *.json 格式。
在 Startup.cs 文件中,构造方法 build appsetting.json 文件,
本文主要对解析配置文件的官方工具类做总结;
一、appsettings.json 文件
在新建的 Core Web 项目中,默认会有一个全局的配置变量:IConfigurationRoot
提供了索引器、GetSection 方法;
获取根节点数据:
Configuration["ConnectionString"]
Configuration["Title"]
获取节点数据:
services.Configure<RedisOptions>(Configuration.GetSection("Redis").Bind)
重点记录的是这个 Microsoft.Extensions.Options.ConfigurationExtensions 提供的 IOptions
Configure 方法可以将 appsettings.json 中的配置绑定某一个实体对象上。如:
View Code
完成这样的一个过程就是 Configure 类实现了一个依赖注入;
.NET Core 中取消了以往的 XML 节点配置文件,改用了 *.json 格式。
在 Startup.cs 文件中,构造方法 build appsetting.json 文件,
本文主要对解析配置文件的官方工具类做总结;
一、appsettings.json 文件
在新建的 Core Web 项目中,默认会有一个全局的配置变量:IConfigurationRoot
提供了索引器、GetSection 方法;
{ "Host": "http://localhost:5966/", "Title": "Hello World", "SiteKeywords": "asp.net, c#, asp.net core, asp.net entityframework core", "Description": "DotNetClub: asp.net core", "ConnectionString": "Data Source=localhost;Initial Catalog=dbName;User Id=userName;Password=pwd;", "Redis": { "EndPoints": [ "localhost", "6379" ], "Password": "", "Db": "" }, "Site": { "Host": "http://localhost:5966", "Title": "Hello World", "Description": "DotNetClub: asp.net core", "AllowRegister": true, "VerifyRegisterUser": false, "AdminUserList": [] }, "CookieName": "DotNetClub.User", "Categories": [ { "Key": "share", "Name": "分享" }, { "Key": "ask", "Name": "问答" }, { "Key": "job", "Name": "招聘" } ] }
获取根节点数据:
Configuration["ConnectionString"]
Configuration["Title"]
获取节点数据:
services.Configure<RedisOptions>(Configuration.GetSection("Redis").Bind)
重点记录的是这个 Microsoft.Extensions.Options.ConfigurationExtensions 提供的 IOptions
Configure 方法可以将 appsettings.json 中的配置绑定某一个实体对象上。如:
public class RedisOptions { /// <summary> /// Redis end points, such as "{host or ip}:{port}" /// </summary> public string[] EndPoints { get; set; } /// <summary> /// Redis password /// </summary> public string Password { get; set; } /// <summary> /// Default redis database /// </summary> public int Db { get; set; } }
View Code
完成这样的一个过程就是 Configure 类实现了一个依赖注入;
相关文章推荐
- ASP.NET Core 在 JSON 文件中配置依赖注入
- 详解ASP.NET Core 在 JSON 文件中配置依赖注入
- ADO.NET .net core2.0添加json文件并转化成类注入控制器使用 简单了解 iTextSharp实现HTML to PDF ASP.NET MVC 中 Autofac依赖注入DI 控制反转IOC 了解一下 C# AutoMapper 了解一下
- 学习ASP.NET Core,你必须了解无处不在的“依赖注入”
- 学习ASP.NET Core,你必须了解无处不在的“依赖注入”
- 【无私分享:ASP.NET CORE 项目实战(第二章)】添加EF上下文对象,添加接口、实现类以及无处不在的依赖注入(DI)
- 学习ASP.NET Core,你必须了解无处不在的“依赖注入”
- 【无私分享:ASP.NET CORE 项目实战(第二章)】添加EF上下文对象,添加接口、实现类以及无处不在的依赖注入(DI)
- ASP .NET CORE 读取配置文件的方法
- ASP.NET下使用xml反序列化、缓存依赖实现个性化配置文件的实时生效
- asp.net core-9.依赖注入的使用
- 了解ASP.NET Core 依赖注入,看这篇就够了 于2017年11月6日由jesseliu发布
- 【ASP.NET Core】ASP.NET Core 依赖注入
- [译]ASP.NET Core 2.0 依赖注入
- ASP.NET Core 新建线程中使用依赖注入的问题
- ASP.NET Core 2.0 依赖注入
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
- 2.2Bind建立配置文件和实体的映射「深入浅出ASP.NET Core系列」
- ASP.NET Core实现类库项目读取配置文件
- 【转载】ASP.NET Core 依赖注入