😎1、优化获取库表信息接口 2、增加 MongoDB 数据库支持

This commit is contained in:
zuohuaijun 2025-07-19 12:06:27 +08:00
parent ce82cab83d
commit 21140b595b
5 changed files with 15 additions and 18 deletions

View File

@ -8,12 +8,13 @@
"ConnectionConfigs": [ "ConnectionConfigs": [
{ {
//"ConfigId": "1300000000001", // - //"ConfigId": "1300000000001", // -
"DbType": "Sqlite", // MySqlSqlServerSqliteOraclePostgreSQLDmKdbndpOscarMySqlConnectorAccessOpenGaussQuestDBHGClickHouseGBaseOdbcCustom "DbType": "Sqlite", // MySqlSqlServerSqliteOraclePostgreSQLDmKdbndpOscarMySqlConnectorAccessOpenGaussMongoDBQuestDBHGClickHouseGBaseOdbcCustom
"ConnectionString": "DataSource=./Admin.NET.db", // Sqlite "ConnectionString": "DataSource=./Admin.NET.db", // Sqlite
//"ConnectionString": "PORT=5432;DATABASE=xxx;HOST=localhost;PASSWORD=xxx;USER ID=xxx", // PostgreSQL //"ConnectionString": "PORT=5432;DATABASE=xxx;HOST=localhost;PASSWORD=xxx;USER ID=xxx", // PostgreSQLKdbndpOpenGauss
//"ConnectionString": "Server=localhost;Database=xxx;Uid=xxx;Pwd=xxx;SslMode=None;AllowLoadLocalInfile=true;AllowUserVariables=true;", // MySql, //"ConnectionString": "Server=localhost;Database=xxx;Uid=xxx;Pwd=xxx;SslMode=None;AllowLoadLocalInfile=true;AllowUserVariables=true;", // MySql,
//"ConnectionString": "User Id=xxx; Password=xxx; Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))", // Oracle //"ConnectionString": "User Id=xxx; Password=xxx; Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))", // Oracle
//"ConnectionString": "Server=localhost;Database=xxx;User Id=xxx;Password=xxx;Encrypt=True;TrustServerCertificate=True;", // SqlServer //"ConnectionString": "Server=localhost;Database=xxx;User Id=xxx;Password=xxx;Encrypt=True;TrustServerCertificate=True;", // SqlServer
//"ConnectionString": "host=222.71.212.3;Port=27017;Database=testDB;Username= root;Password=123456;authSource=admin;replicaSet=", // MongoDB
//"SlaveConnectionConfigs": [ // / //"SlaveConnectionConfigs": [ // /
// { // {

View File

@ -8,12 +8,13 @@
"ConnectionConfigs": [ "ConnectionConfigs": [
{ {
//"ConfigId": "1300000000001", // - //"ConfigId": "1300000000001", // -
"DbType": "Sqlite", // MySqlSqlServerSqliteOraclePostgreSQLDmKdbndpOscarMySqlConnectorAccessOpenGaussQuestDBHGClickHouseGBaseOdbcCustom "DbType": "Sqlite", // MySqlSqlServerSqliteOraclePostgreSQLDmKdbndpOscarMySqlConnectorAccessOpenGaussMongoDBQuestDBHGClickHouseGBaseOdbcCustom
"ConnectionString": "DataSource=./Admin.NET.db", // Sqlite "ConnectionString": "DataSource=./Admin.NET.db", // Sqlite
//"ConnectionString": "PORT=5432;DATABASE=xxx;HOST=localhost;PASSWORD=xxx;USER ID=xxx", // PostgreSQL //"ConnectionString": "PORT=5432;DATABASE=xxx;HOST=localhost;PASSWORD=xxx;USER ID=xxx", // PostgreSQLKdbndpOpenGauss
//"ConnectionString": "Server=localhost;Database=xxx;Uid=xxx;Pwd=xxx;SslMode=None;AllowLoadLocalInfile=true;AllowUserVariables=true;", // MySql, //"ConnectionString": "Server=localhost;Database=xxx;Uid=xxx;Pwd=xxx;SslMode=None;AllowLoadLocalInfile=true;AllowUserVariables=true;", // MySql,
//"ConnectionString": "User Id=xxx; Password=xxx; Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))", // Oracle //"ConnectionString": "User Id=xxx; Password=xxx; Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))", // Oracle
//"ConnectionString": "Server=localhost;Database=xxx;User Id=xxx;Password=xxx;Encrypt=True;TrustServerCertificate=True;", // SqlServer //"ConnectionString": "Server=localhost;Database=xxx;User Id=xxx;Password=xxx;Encrypt=True;TrustServerCertificate=True;", // SqlServer
//"ConnectionString": "host=222.71.212.3;Port=27017;Database=testDB;Username= root;Password=123456;authSource=admin;replicaSet=", // MongoDB
//"SlaveConnectionConfigs": [ // / //"SlaveConnectionConfigs": [ // /
// { // {
@ -26,18 +27,18 @@
// } // }
//], //],
"DbSettings": { "DbSettings": {
"EnableInitDb": true, // "EnableInitDb": false, //
"EnableInitView": true, // "EnableInitView": false, //
"EnableDiffLog": false, // "EnableDiffLog": false, //
"EnableUnderLine": false, // 线 "EnableUnderLine": false, // 线
"EnableConnEncrypt": false // SM2 "EnableConnEncrypt": false // SM2
}, },
"TableSettings": { "TableSettings": {
"EnableInitTable": true, // "EnableInitTable": false, //
"EnableIncreTable": false // [IncreTable] "EnableIncreTable": false // [IncreTable]
}, },
"SeedSettings": { "SeedSettings": {
"EnableInitSeed": true, // "EnableInitSeed": false, //
"EnableIncreSeed": false // [IncreSeed] "EnableIncreSeed": false // [IncreSeed]
} }
} }

View File

@ -52,6 +52,7 @@
<PackageReference Include="SixLabors.ImageSharp.Web" Version="3.1.5" /> <PackageReference Include="SixLabors.ImageSharp.Web" Version="3.1.5" />
<PackageReference Include="SKIT.FlurlHttpClient.Wechat.Api" Version="3.11.0" /> <PackageReference Include="SKIT.FlurlHttpClient.Wechat.Api" Version="3.11.0" />
<PackageReference Include="SKIT.FlurlHttpClient.Wechat.TenpayV3" Version="3.13.0" /> <PackageReference Include="SKIT.FlurlHttpClient.Wechat.TenpayV3" Version="3.13.0" />
<PackageReference Include="SqlSugar.MongoDbCore" Version="5.1.4.227" />
<PackageReference Include="SqlSugarCore" Version="5.1.4.198" /> <PackageReference Include="SqlSugarCore" Version="5.1.4.198" />
<PackageReference Include="SSH.NET" Version="2025.0.0" /> <PackageReference Include="SSH.NET" Version="2025.0.0" />
<PackageReference Include="System.Linq.Dynamic.Core" Version="1.6.6" /> <PackageReference Include="System.Linq.Dynamic.Core" Version="1.6.6" />

View File

@ -113,16 +113,8 @@ public class SysCodeGenConfigService : IDynamicApiController, ITransient
var types = new List<Type>(); var types = new List<Type>();
if (_codeGenOptions.EntityAssemblyNames != null) if (_codeGenOptions.EntityAssemblyNames != null)
{ {
var assemblies = AppDomain.CurrentDomain.GetAssemblies(); types = App.EffectiveTypes.Where(u => u.IsClass).Where(u => _codeGenOptions.EntityAssemblyNames.Contains(u.Assembly.GetName().Name)
foreach (var assembly in assemblies) || _codeGenOptions.EntityAssemblyNames.Any(name => u.Assembly.GetName().Name!.Contains(name))).ToList();
{
var assemblyName = assembly.GetName().Name!;
if (_codeGenOptions.EntityAssemblyNames.Contains(assemblyName) || _codeGenOptions.EntityAssemblyNames.Any(name => assemblyName.Contains(name)))
{
Assembly asm = Assembly.Load(assemblyName);
types.AddRange(asm.GetExportedTypes().ToList());
}
}
} }
Type[] cosType = types.Where(u => u.IsDefined(typeof(SugarTable), false) && !u.GetCustomAttributes<IgnoreTableAttribute>().Any()).ToArray(); Type[] cosType = types.Where(u => u.IsDefined(typeof(SugarTable), false) && !u.GetCustomAttributes<IgnoreTableAttribute>().Any()).ToArray();

View File

@ -23,6 +23,8 @@ public static class SqlSugarSetup
// 自定义雪花Id算法 // 自定义雪花Id算法
StaticConfig.CustomSnowFlakeFunc = YitIdHelper.NextId; StaticConfig.CustomSnowFlakeFunc = YitIdHelper.NextId;
// 注册 MongoDb
InstanceFactory.CustomAssemblies = [typeof(SqlSugar.MongoDb.MongoDbProvider).Assembly];
// 配置字符串表达式 // 配置字符串表达式
StaticConfig.DynamicExpressionParserType = typeof(DynamicExpressionParser); StaticConfig.DynamicExpressionParserType = typeof(DynamicExpressionParser);
StaticConfig.DynamicExpressionParsingConfig = new ParsingConfig StaticConfig.DynamicExpressionParsingConfig = new ParsingConfig