.NET Core读取配置文件

1. 说明

默认情况下读取配置Configuration的默认优先级:ConfigureAppConfiguration(自定义读取)>CommandLine(命令行参数)>Environment(环境变量)>appsetting.json(默认配置文件)>UseSetting的顺序

原因:读取配置的顺序是后来者居上模式,后来注册的会优先被读取到。

2. 获取配置

2.1 获取单个项

//值是数组
 var a0 = Configuration.GetSection("RabbitMQ:Hosts").Get<string[]>();
//获取数组第一个
 var a0 = Configuration["RabbitMQ:Hosts:0"];
//值是int类型
 var a1 = Configuration.GetValue<int>("RabbitMQ:Port");
//值是字符串
var a2 = Configuration.GetValue<string>("RabbitMQ:UserName");
var a2 = Configuration["RabbitMQ:UserName"];

2.2 映射项到模型类

模型类

    public class RabbitMQConfig
    {
        public const string RabbitMQ = "RabbitMQ";
        public string[] Hosts { get; set; }

        public int Port { get; set; }

        public string UserName { get; set; }

        public string Password { get; set; }

        public string VirtualHost { get; set; }
    }

appsettings

  "RabbitMQ": {
    "Hosts": [ "xxx.xxx.xxx.xxx" ],
    "Port": 5672,
    "UserName": "admin",
    "Password": "xxxxxx",
    "VirtualHost": "myQueue"
  }

2.2.1 注入模型类

//startup配置
services.Configure<RabbitMQConfig>(Configuration.GetSection(RabbitMQConfig.RabbitMQ));
//获取数据
private readonly RabbitMQConfig _rabbitMQConfig;
public WeatherForecastController(IOptions<RabbitMQConfig> options)
{
    _rabbitMQConfig = options.Value;
}

2.2.2 映射项到模型类

var info = new RabbitMQConfig();
Configuration.Bind(RabbitMQConfig.RabbitMQ, info);
//or
Configuration.GetSection(RabbitMQConfig.RabbitMQ).Bind(info);

到此这篇关于.NET Core读取配置文件的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • .NET Core获取配置文件内容

    结合了好几个哥们的写法,最终我使用了这个版本,现在把我这个版本的写出来,如果该版本和您的版本类似或者一样,那可能是借鉴您的 using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration.Json; using System; using System.Collections.Generic; using System.Te

  • ASP.NET Core配置文件的获取和设置

    在ASP.NET Core 中,应用程序配置数据可以使用JSON, XML 和 INI格式 和内置环境变量,命令行参数或内存中的集合. 1.如何获取和设置配置 ASP.NET Core配置系统针对以前的依赖于System.Configuration和XML配置文件(如Web.config)的ASP,NET 版本进行了重构.新的配置模型提供了精简高效的,能够通过检索多样化提供程序来获取基于键/值对配置的能力.应用程序和框架可以通过新的选择模式访问配置. 可以在ASP.NET Core应用程序中的S

  • ASP.NET Core读取配置文件

    ASP.NET Core 中,可以使用 ConfigurationBuilder 对象来构建. 主要分为三部:配置数据源 -> ConfigurationBuilder -> 使用. 数据源可来自字典或配置文件. 数据源要么继承 IConfigurationSource ,要么从配置文件中读取. 1,来自字典 我们先使用字典存储键值对,来设置配置, test = 配置,然后使用 ConfigurationBuilder.Add() 方法添加数据源, Add 方法可以添加继承了 IConfigu

  • Asp.Net Core配置多环境log4net配置文件的全过程

    目录 前言 配置log4net 总结 前言 在之前的文章中有讲到AspNetCore多环境配置文件的应用,我们根据自己多种环境分别配置多个appsettings.$EnvironmentName.json文件. 在实际的开发中我们可能会遇到不只一个配置文件,如当我们使用log4net日志库时,喜欢使用单独的log4net.config配置文件.并且我们还遇到不同环境下的配置文件还存在差异.这时我们可能可以效仿appsettings.json多环境配置的风格实现多环境配置文件. 配置log4net

  • .NET Core读取配置文件的方法

    配置文件是每个项目最基础的部分,也是不可或缺的部分,比如:数据库连接.中间件属性等常见的配置. 今天这篇文章主要内容就是,在.Net Core项目中怎样去读取配置文件并使用. 提前准备 appsettings.json 文件 { "User": { "userName": "赵一", "userAge": 18 } } 对应实体模型 public class UserOption { public string userNam

  • ASP.NET CORE读取json格式配置文件

    目录 一.在Startup类中读取json配置文件 1.使用Configuration直接读取 2.使用IOptions接口 1.定义实体类 2.修改json文件 3.在StartUp类里面配置 3.读取自定义json文件 实例化类 添加方式1 添加方式2 二.在类库中读取json文件 在.Net Framework中,配置文件一般采用的是XML格式的,.NET Framework提供了专门的ConfigurationManager来读取配置文件的内容,.net core中推荐使用json格式的

  • .NetCore基础之读取配置文件详解

    目录 涉及知识点 安装插件 读取Json文件 1.准备数据 2.创建IConfiguration接口实例 3.通过索引器进行读取 4.通过GetValue<T>()方法进行读取 5.读取数组 6.整体对象绑定 7.Json示例截图 读取XML文件 1.创建XML文件 2.简单读取 3.读取数组 4.整体绑定对象 5.示例截图 读取INI文件 1.创建ini文件 2.创建配置并读取 3.示例截图 读取环境变量 1.查看环境变量 2.简单读取 3.示例截图 备注 在应用程序开发中,配置文件是主要存

  • .NET Core自定义配置文件

    前文讲获取配置文件内容的时候,是获取默认的appsettings.json配置文件的配置,下面说明下如何进行自定义配置文件获取 1. Json Provider 1.1 构建独立的IConfiguration 编写方法 public static IConfigurationRoot LoadSettings(this IHostEnvironment env) { return new ConfigurationBuilder() .SetBasePath(AppDomain.CurrentD

  • .NET Core读取配置文件

    1. 说明 默认情况下读取配置Configuration的默认优先级:ConfigureAppConfiguration(自定义读取)>CommandLine(命令行参数)>Environment(环境变量)>appsetting.json(默认配置文件)>UseSetting的顺序 原因:读取配置的顺序是后来者居上模式,后来注册的会优先被读取到. 2. 获取配置 2.1 获取单个项 //值是数组 var a0 = Configuration.GetSection("Ra

  • .NET Core读取配置文件方式详细总结

    基于.NET Core的跨平台开发,配置文件与之前.NET Framework采用xml的config文件不同,目前主要是采用json文件键值对配置方式读取. 参考网上相关资料总结如下: 一. 引入扩展 System.Configuration.ConfigurationManager Nuget 下载扩展,Install-Package System.Configuration.ConfigurationManager 使用方式:添加配置文件App.config.读取方式与原.NET Fram

  • Asp.net Core与类库读取配置文件信息的方法

    前言 首先开一个脑洞,Asp.net core 被使用这么长时间了,但是关于配置文件(json)的读取,微软官方似乎并没有给出像.net framework读取web.config那样简单且完美.严重怀疑这是微软为了促进.net core 生态繁荣搞的一点小手段. appsetting.Development.json (appsetting.json的内容和这个差不多,下面会讲到多环境使用) { "SettingPath": { "VideoFilePath":

  • 如何在ASP.NET Core类库项目中读取配置文件详解

    前言 最近有朋友问如何在.net core类库中读取配置文件,当时一下蒙了,这个提的多好,我居然不知道,于是这两天了解了相关内容才有此篇文章的出现,正常来讲我们在应用程序目录下有个appsettings.json文件对于相关配置都会放在这个json文件中,但是要是我建立一个类库项目,对于一些配置比如密钥或者其他需要硬编码的数据放在JSON文件中,在.net core之前配置文件为web.config并且有相关的类来读取节点上的数据,现如今在.net core中为json文件,那么我们该如何做?本

  • IIS7/iis7.5 HTTP Error 500.19 配置错误由于权限不足而无法读取配置文件的解决办法

    win7 web开发遇到的问题-由于权限不足而无法读取配置文件,无法访问请求的页面 错误一: HTTP Error 500.19 - Internal Server Error 配置错误: 不能在此路径中使用此配置节.如果在父级别上锁定了该节,便会出现这种情况.锁定是默认设置的 (overrideModeDefault="Deny"),或者是通过包含 overrideMode="Deny" 或旧有的 allowOverride="false" 的

  • 详解Spring Boot读取配置文件与配置文件优先级

    Spring Boot读取配置文件 1)通过注入ApplicationContext 或者 Environment对象来读取配置文件里的配置信息. package com.ivan.config.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; import org.springframe

随机推荐