优化sqlsugar启动

This commit is contained in:
yubaolee 2023-09-01 01:44:25 +08:00
parent 19fc3bc933
commit 16421f9a8b

View File

@ -174,67 +174,18 @@ namespace OpenAuth.WebApi
services.AddDataProtection().PersistKeysToFileSystem(new DirectoryInfo(Configuration["DataProtection"])); services.AddDataProtection().PersistKeysToFileSystem(new DirectoryInfo(Configuration["DataProtection"]));
var sqlsugarTypes = UtilMethods.EnumToDictionary<SqlSugar.DbType>();
var dbType = sqlsugarTypes.FirstOrDefault(it =>
dbtypes.ToDictionary(u => u.Key, v => v.Value.ToLower()).ContainsValue(it.Key));
services.AddScoped<ISqlSugarClient>(s => services.AddScoped<ISqlSugarClient>(s =>
{ {
var sqlSugar = new SqlSugarClient(new ConnectionConfig()
SqlSugarClient sqlSugar;
if(dbtypes.ContainsValue(Define.DBTYPE_SQLSERVER))
{ {
sqlSugar = new SqlSugarClient (new ConnectionConfig() DbType = dbType.Value,
{
DbType = SqlSugar.DbType.SqlServer,
ConnectionString = connectionString, ConnectionString = connectionString,
IsAutoCloseConnection = true, IsAutoCloseConnection = true,
},db=>{ }, db => { db.Aop.OnLogExecuting = (sql, pars) => { logger.LogInformation(sql); }; });
db.Aop.OnLogExecuting = (sql, pars) =>
{
logger.LogInformation(sql);
};
});
}
else if(dbtypes.ContainsValue(Define.DBTYPE_MYSQL)) //mysql
{
sqlSugar = new SqlSugarClient (new ConnectionConfig()
{
DbType = SqlSugar.DbType.MySql,
ConnectionString = connectionString,
IsAutoCloseConnection = true,
},db=>{
db.Aop.OnLogExecuting = (sql, pars) =>
{
logger.LogInformation(sql);
};
});
}
else if(dbtypes.ContainsValue(Define.DBTYPE_PostgreSQL)) //PostgreSQL
{
sqlSugar = new SqlSugarClient (new ConnectionConfig()
{
DbType = SqlSugar.DbType.PostgreSQL,
ConnectionString = connectionString,
IsAutoCloseConnection = true,
},db=>{
db.Aop.OnLogExecuting = (sql, pars) =>
{
logger.LogInformation(sql);
};
});
}
else
{
sqlSugar = new SqlSugarClient (new ConnectionConfig()
{
DbType = SqlSugar.DbType.Oracle,
ConnectionString = connectionString,
IsAutoCloseConnection = true,
},db=>{
db.Aop.OnLogExecuting = (sql, pars) =>
{
logger.LogInformation(sql);
};
});
}
return sqlSugar; return sqlSugar;
}); });
@ -297,7 +248,8 @@ namespace OpenAuth.WebApi
app.UseSwaggerUI(c => app.UseSwaggerUI(c =>
{ {
c.IndexStream = () => c.IndexStream = () =>
IntrospectionExtensions.GetTypeInfo(GetType()).Assembly.GetManifestResourceStream("OpenAuth.WebApi.index.html"); IntrospectionExtensions.GetTypeInfo(GetType()).Assembly
.GetManifestResourceStream("OpenAuth.WebApi.index.html");
foreach (var controller in GetControllers()) foreach (var controller in GetControllers())
{ {