namespace IStation
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public class ConfigHelper
|
{
|
|
#region PostgreSql-ConnectionConfig
|
|
/// <summary>
|
/// PostgreSql连接配置
|
/// </summary>
|
internal static ConnectionConfig PostgreSqlConnectionConfig
|
{
|
get
|
{
|
//SnowFlakeSingle.WorkId = Settings.SqlSugar.SnowFlakeWorkId; 不同机器配置的唯一数字; // 单服务器不需要指定
|
return new ConnectionConfig()
|
{
|
DbType = SqlSugar.DbType.PostgreSQL,//数据库类型
|
ConnectionString = Settings.ParasHelper.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);
|
}
|
}
|
};
|
}
|
}
|
#endregion
|
|
#region SQLite-ConnectionConfig
|
|
|
/// <summary>
|
/// Analysis SQLite连接配置
|
/// </summary>
|
internal static ConnectionConfig AnalysisConnectionConfig
|
{
|
get
|
{
|
return GetConnectionConfig(Settings.ParasHelper.DataBase.SQLite.AnalysisConnectString);
|
}
|
}
|
|
/// <summary>
|
/// Schedule SQLite连接配置
|
/// </summary>
|
internal static ConnectionConfig ScheduleConnectionConfig
|
{
|
get
|
{
|
return GetConnectionConfig(Settings.ParasHelper.DataBase.SQLite.ScheduleConnectString);
|
}
|
}
|
|
/// <summary>
|
/// Hydraulic SQLite连接配置
|
/// </summary>
|
internal static ConnectionConfig HydraulicConnectionConfig
|
{
|
get
|
{
|
return GetConnectionConfig(Settings.ParasHelper.DataBase.SQLite.HydraulicConnectString);
|
}
|
}
|
|
/// <summary>
|
/// Monitor SQLite连接配置
|
/// </summary>
|
internal static ConnectionConfig MonitorConnectionConfig
|
{
|
get
|
{
|
return GetConnectionConfig(Settings.ParasHelper.DataBase.SQLite.MonitorConnectString);
|
}
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="connection_string"></param>
|
/// <returns></returns>
|
private static ConnectionConfig GetConnectionConfig(string connection_string)
|
{
|
var config = new ConnectionConfig
|
{
|
DbType = SqlSugar.DbType.Sqlite,//数据库类型
|
ConnectionString = connection_string,
|
IsAutoCloseConnection = true,//是否自动关闭
|
MoreSettings = new ConnMoreSettings()
|
{
|
//PgSqlIsAutoToLower = false //数据库存在大写字段的 ,需要把这个设为false ,并且实体和字段名称要一样
|
},
|
AopEvents = new AopEvents
|
{
|
OnLogExecuting = (sql, p) =>
|
{
|
//var sqlString = UtilMethods.GetNativeSql(sql, p);
|
//Yw.LogHelper.Error(sqlString);
|
}
|
},
|
ConfigureExternalServices = new ConfigureExternalServices()
|
{
|
EntityService = (property, column) =>
|
{
|
//除主键外都可空
|
if (!column.IsPrimarykey)
|
{
|
column.IsNullable = true;
|
}
|
}
|
}
|
};
|
return config;
|
}
|
|
|
|
#endregion
|
|
|
|
}
|
}
|