1. 说明 默认情况下读取配置Configuration的默认优先级:ConfigureAppConfiguration(自定义读取)>CommandLine(命令行参数)&g
默认情况下读取配置Configuration的默认优先级:ConfigureAppConfiguration(自定义读取)>CommandLine(命令行参数)>Environment(环境变量)>appsetting.JSON(默认配置文件)>UseSetting的顺序
原因:读取配置的顺序是后来者居上模式,后来注册的会优先被读取到。
//值是数组
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"];
模型类
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"
}
//startup配置
services.Configure<RabbitMQConfig>(Configuration.GetSection(RabbitMQConfig.RabbitMQ));
//获取数据
private readonly RabbitMQConfig _rabbitMQConfig;
public WeatherForecastController(IOptions<RabbitMQConfig> options)
{
_rabbitMQConfig = options.Value;
}
var info = new RabbitMQConfig();
Configuration.Bind(RabbitMQConfig.RabbitMQ, info);
//or
Configuration.GetSection(RabbitMQConfig.RabbitMQ).Bind(info);
--结束END--
本文标题: .NETCore读取配置文件
本文链接: https://lsjlt.com/news/153684.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2023-05-21
2023-05-21
2023-05-21
2023-05-21
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0