思路:通过appsetting.json来配置所有的配置信息,比如数据库连接、日志配置、Redis配置等等。
一、appsettings.json配置
{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "urls": "http://0.0.0.0:5010", "AllowedHosts": "*", //数据库配置 "DBConfig": { //数据库类型:MySql = 0,SqlServer = 1,Sqlite = 2,Oracle = 3,PostgreSQL = 4,Dm = 5,Kdbndp = 6,Oscar = 7,MySqlConnector = 8,Access = 9,OpenGauss = 10,QuestDB = 11,HG = 12, ClickHouse = 13,GBase = 14,Odbc = 0xF,Custom = 90 "DBType": 1, //主数据库连接串 "ConnectionString": "Server=127.0.0.1;user=db;password=111111;Initial Catalog=fang;Encrypt=True;TrustServerCertificate=True;", //数据库超时时间,单位:秒 "CommandTimeOut": 30 } }
二、建立appsetting.json和类的对应文件
建立GlobalContext.cs文件来读取配置,每个配置再单独建立一个配置类,比如数据库连接就对应DBConfig.cs
GlobalContext.cs
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Randy.Fang.Common { /// <summary> /// 全局配置 /// </summary> public class GlobalContext { /// <summary> /// 数据库配置 /// </summary> public static DBConfig DBConfig { get; set; } } }
DBConfig.cs
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Randy.Fang.Common { /// <summary> /// 数据库配置 /// </summary> public class DBConfig { /// <summary> /// 数据库类型 /// </summary> public int DBType { get; set; } /// <summary> /// 数据库连接串 /// </summary> public String ConnectionString { get; set; } /// <summary> /// 数据库超时时间 /// </summary> public int CommandTimeOut { get; set; } } }
三、startup文件加载配置
在Startup.cs的ConfigureServices方法中调用函数
/// <summary> /// 初始化全局静态配置 /// </summary> private void InitConfiguration() { GlobalContext.DBConfig = Configuration.GetSection("DBConfig").Get<DBConfig>(); }
进行配置转类的操作
四、配置文件使用
在需要使用的地方直接使用即可。比如数据库操作
五、新增其他配置
比如需要新增一个Redis的配置,操作如下
1、appsettings.cs新增RedisConfig的节点
2、新建RedisConfig.cs文件,字段对应appsettings.cs里的设置
3、修改GlobalContext.cs文件,新建一行
public static RedisConfig RedisConfig { get; set; }
4、startup.cs里新增配置读取
GlobalContext.RedisConfig = Configuration.GetSection("RedisConfig").Get<RedisConfig>();
5、使用GlobalContext.RedisConfig读取即可。
(本文完)
标签:DBConfig,读取,配置文件,数据库,配置,System,管理软件,cs,using From: https://www.cnblogs.com/randytech/p/16657454.html