lixiaojun
2024-12-02 f54adb8f368def21b9aa01e466b09bed6cd8347c
Service/HStation.Service.Assets.Core/00-core/ConfigHelper.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,93 @@
namespace HStation.Assets
{
    internal class ConfigHelper
    {
        /// <summary>
        /// é»˜è®¤è¿žæŽ¥é…ç½®
        /// </summary>
        internal static ConnectionConfig DefaultConnectionConfig
        {
            get
            {
                ConnectionConfig connectConfig = null;
                switch (AssetsParasHelper.Assets.DataBase.DbType)
                {
                    case DbType.PostgreSql:
                        {
                            connectConfig = PostgreSqlConnectionConfig;
                        }
                        break;
                    case DbType.SQLite:
                        {
                            connectConfig = SQLiteConnectionConfig;
                        }
                        break;
                    default: break;
                }
                return connectConfig;
            }
        }
        /// <summary>
        /// PostgreSql连接配置
        /// </summary>
        internal static ConnectionConfig PostgreSqlConnectionConfig
        {
            get
            {
                //SnowFlakeSingle.WorkId = Settings.SqlSugar.SnowFlakeWorkId; ä¸åŒæœºå™¨é…ç½®çš„唯一数字; // å•服务器不需要指定
                return new ConnectionConfig()
                {
                    DbType = SqlSugar.DbType.PostgreSQL,//数据库类型
                    ConnectionString = HStation.Settings.AssetsParasHelper.Assets.DataBase.PostgreSql.ConnectString,
                    IsAutoCloseConnection = true,//是否自动关闭
                    MoreSettings = new ConnMoreSettings()
                    {
                        //PgSqlIsAutoToLower = false //数据库存在大写字段的 ï¼Œéœ€è¦æŠŠè¿™ä¸ªè®¾ä¸ºfalse ï¼Œå¹¶ä¸”实体和字段名称要一样
                    },
                    AopEvents = new AopEvents
                    {
                        OnLogExecuting = (sql, p) =>
                        {
                            // var sqlString = UtilMethods.GetNativeSql(sql, p);
                            //LogHelper.Debug(sqlString);
                            // Console.WriteLine(sql);
                        }
                    }
                };
            }
        }
        /// <summary>
        /// SQLite连接配置
        /// </summary>
        internal static ConnectionConfig SQLiteConnectionConfig
        {
            get
            {
                //SnowFlakeSingle.WorkId = Settings.SqlSugar.SnowFlakeWorkId; ä¸åŒæœºå™¨é…ç½®çš„唯一数字; // å•服务器不需要指定
                return new ConnectionConfig()
                {
                    DbType = SqlSugar.DbType.Sqlite,//数据库类型
                    ConnectionString = AssetsParasHelper.Assets.DataBase.SQLite.ConnectString,
                    IsAutoCloseConnection = true,//是否自动关闭
                    MoreSettings = new ConnMoreSettings()
                    {
                        //PgSqlIsAutoToLower = false //数据库存在大写字段的 ï¼Œéœ€è¦æŠŠè¿™ä¸ªè®¾ä¸ºfalse ï¼Œå¹¶ä¸”实体和字段名称要一样
                    },
                    AopEvents = new AopEvents
                    {
                        OnLogExecuting = (sql, p) =>
                        {
                            // var sqlString = UtilMethods.GetNativeSql(sql, p);
                            //LogHelper.Debug(sqlString);
                            // Console.WriteLine(sql);
                        }
                    }
                };
            }
        }
    }
}