Aso.Net Core 的配置系统Configuration
Aso.Net Core 的配置系统Configuration
? 1.以前的配置文件格式为XML
? 2.新版的配置文件格式支持 { json ,xml, ini, memory, command, env..... }
01.Json文件的弱类型方式读取Json文件 【Microsoft.Extensions.Configuration.Json】
添加配置文件json文件,,并设置内容
{ "DataBase": { "SqlServer": { "ConnectionString": "server=.;database=testdb;uid=sa;pwd=123;" }, "MySql": { "IpAddress": "127.0.0.1", "port": 3306 } }, "endArray": [ { "endId": 20 }, { "endId": "30" } ] }获取数据
private static void Main(string[] args) { IConfiguration configuration = new ConfigurationBuilder() .SetBasePath(Environment.CurrentDirectory) .AddJsonFile("AppSettings.json",true,true) .AddInMemoryCollection() .Build(); var str1 = configuration["DataBase:SqlServer:ConnectionString"]; var str2 = configuration["endArray:0:endId"]; Console.WriteLine($"{str1}+---{str2}"); } 02.Json文件的强类型获取方式1.添加引用【Microsoft.Extensions.Configuration.Binder】
2.GetValue方式获取
private static void Main(string[] args) { IConfiguration configuration = new ConfigurationBuilder() .SetBasePath(Environment.CurrentDirectory) .AddJsonFile("AppSettings.json",true,true) .AddInMemoryCollection() .Build(); //GetValue获取方式 int val = configuration.GetValue<int>("endArray:0:endId"); Console.WriteLine(val); }3.实体映射方式
private static void Main(string[] args) { IConfiguration configuration = new ConfigurationBuilder() .SetBasePath(Environment.CurrentDirectory) .AddJsonFile("AppSettings.json",true,true) .AddInMemoryCollection() .Build(); //Bind 获取方式 Root root=new Root(); configuration.Bind(root); var ip = root.DataBase.MySql.IpAddress; var entid = root.endArray[0].endId; Console.WriteLine($"{ip}{entid}"); //Get<T> 获取 var root = configuration.Get<Root>(); var ip = root.DataBase.MySql.IpAddress; var entid = root.endArray[0].endId; Console.WriteLine($"{ip}{entid}"); } //这里是实体类 public class SqlServer { /// <summary> /// /// </summary> public string ConnectionString { get; set; } } public class MySql { /// <summary> /// /// </summary> public string IpAddress { get; set; } /// <summary> /// /// </summary> public int port { get; set; } } public class DataBase { /// <summary> /// /// </summary> public SqlServer SqlServer { get; set; } /// <summary> /// /// </summary> public MySql MySql { get; set; } } public class EndArray { /// <summary> /// /// </summary> public int endId { get; set; } } public class Root { /// <summary> /// /// </summary> public DataBase DataBase { get; set; } /// <summary> /// /// </summary> public List<EndArray> endArray { get; set; } }Aso.Net Core 的配置系统Configuration
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/42152.html
- 上一篇:netcat命令用法
- 下一篇:uploadfile的使用(多文件异步上传)