Code optimization

This commit is contained in:
sunkaixuan 2022-05-05 15:54:42 +08:00
parent 3bb8192f8d
commit 342f309005
2 changed files with 42 additions and 34 deletions

View File

@ -66,40 +66,8 @@ namespace SqlSugar
}
private List<ConnectionConfig> GetCopyConfigs()
{
return _configs.Select(it => new ConnectionConfig()
{
AopEvents = it.AopEvents,
ConfigId = it.ConfigId,
ConfigureExternalServices = it.ConfigureExternalServices,
ConnectionString = it.ConnectionString,
DbType = it.DbType,
IndexSuffix = it.IndexSuffix,
InitKeyType = it.InitKeyType,
IsAutoCloseConnection = it.IsAutoCloseConnection,
LanguageType = it.LanguageType,
MoreSettings = it.MoreSettings == null ? null : new ConnMoreSettings()
{
DefaultCacheDurationInSeconds = it.MoreSettings.DefaultCacheDurationInSeconds,
DisableNvarchar = it.MoreSettings.DisableNvarchar,
PgSqlIsAutoToLower = it.MoreSettings.PgSqlIsAutoToLower,
IsAutoRemoveDataCache = it.MoreSettings.IsAutoRemoveDataCache,
IsWithNoLockQuery = it.MoreSettings.IsWithNoLockQuery,
TableEnumIsString=it.MoreSettings.TableEnumIsString,
DisableMillisecond=it.MoreSettings.DisableMillisecond
},
SqlMiddle=it.SqlMiddle==null?null:new SqlMiddle {
IsSqlMiddle=it.SqlMiddle.IsSqlMiddle,
ExecuteCommand=it.SqlMiddle.ExecuteCommand,
ExecuteCommandAsync=it.SqlMiddle.ExecuteCommandAsync,
GetDataReader=it.SqlMiddle.GetDataReader,
GetDataReaderAsync=it.SqlMiddle.GetDataReaderAsync,
GetDataSetAll=it.SqlMiddle.GetDataSetAll,
GetDataSetAllAsync=it.SqlMiddle.GetDataSetAllAsync,
GetScalar=it.SqlMiddle.GetScalar,
GetScalarAsync=it.SqlMiddle.GetScalarAsync
},
SlaveConnectionConfigs = it.SlaveConnectionConfigs
}).ToList();
return _configs.Select(it =>UtilMethods.CopyConfig(it)).ToList();
}
}
}

View File

@ -69,6 +69,46 @@ namespace SqlSugar
return isAsync;
}
public static ConnectionConfig CopyConfig(ConnectionConfig it)
{
return new ConnectionConfig()
{
AopEvents = it.AopEvents,
ConfigId = it.ConfigId,
ConfigureExternalServices = it.ConfigureExternalServices,
ConnectionString = it.ConnectionString,
DbType = it.DbType,
IndexSuffix = it.IndexSuffix,
InitKeyType = it.InitKeyType,
IsAutoCloseConnection = it.IsAutoCloseConnection,
LanguageType = it.LanguageType,
MoreSettings = it.MoreSettings == null ? null : new ConnMoreSettings()
{
DefaultCacheDurationInSeconds = it.MoreSettings.DefaultCacheDurationInSeconds,
DisableNvarchar = it.MoreSettings.DisableNvarchar,
PgSqlIsAutoToLower = it.MoreSettings.PgSqlIsAutoToLower,
IsAutoRemoveDataCache = it.MoreSettings.IsAutoRemoveDataCache,
IsWithNoLockQuery = it.MoreSettings.IsWithNoLockQuery,
TableEnumIsString = it.MoreSettings.TableEnumIsString,
DisableMillisecond = it.MoreSettings.DisableMillisecond
},
SqlMiddle = it.SqlMiddle == null ? null : new SqlMiddle
{
IsSqlMiddle = it.SqlMiddle.IsSqlMiddle,
ExecuteCommand = it.SqlMiddle.ExecuteCommand,
ExecuteCommandAsync = it.SqlMiddle.ExecuteCommandAsync,
GetDataReader = it.SqlMiddle.GetDataReader,
GetDataReaderAsync = it.SqlMiddle.GetDataReaderAsync,
GetDataSetAll = it.SqlMiddle.GetDataSetAll,
GetDataSetAllAsync = it.SqlMiddle.GetDataSetAllAsync,
GetScalar = it.SqlMiddle.GetScalar,
GetScalarAsync = it.SqlMiddle.GetScalarAsync
},
SlaveConnectionConfigs = it.SlaveConnectionConfigs
};
}
public static bool IsAsyncMethod(MethodBase method)
{
if (method == null)