using SqlSugar; using System; using System.Collections.Generic; using System.Configuration; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SnapshotWinFormsApp.Repository; public class DbSqlServer { public Dictionary DbItems { get; private set; } private static DbSqlServer _instance; public static DbSqlServer Instance => _instance ??= new DbSqlServer(); private DbSqlServer() { DbItems = new Dictionary(); foreach (var item in ConfigurationManager.ConnectionStrings) { var settings = (ConnectionStringSettings)item; if (settings.ProviderName.Length < 8) { var db = new SqlSugarClient(new ConnectionConfig() { ConnectionString = settings.ConnectionString, DbType = settings.Name.StartsWith("PG") ? SqlSugar.DbType.PostgreSQL: SqlSugar.DbType.SqlServer, IsAutoCloseConnection = true, InitKeyType = InitKeyType.Attribute, MoreSettings = new ConnMoreSettings { PgSqlIsAutoToLower = false, PgSqlIsAutoToLowerCodeFirst = false, } }); db.Aop.OnLogExecuting = (sql, pars) => { Console.WriteLine(sql); }; DbItems.Add(settings.ProviderName + settings.Name, db); } } } }