refactor: 连接串全部回归 Host appsettings 管理,模块零拼接
- Host appsettings 配各模块完整连接串(Default/File/Im/Workflow) - 模块 Infrastructure 只 GetConnectionString 读自己的 key,不做任何拼接 - 删除 baseConn/Database=xxx 拼接逻辑 - build 0/0
This commit is contained in:
parent
44927e651e
commit
6649272772
@ -18,7 +18,10 @@
|
|||||||
},
|
},
|
||||||
"AllowedHosts": "*",
|
"AllowedHosts": "*",
|
||||||
"ConnectionStrings": {
|
"ConnectionStrings": {
|
||||||
"Default": "Host=43.134.235.58;Port=15432;Username=rag;Password=REDACTED_PG_PASSWORD",
|
"Default": "Host=43.134.235.58;Port=15432;Database=rag;Username=rag;Password=REDACTED_PG_PASSWORD",
|
||||||
|
"File": "Host=43.134.235.58;Port=15432;Database=file_system;Username=rag;Password=REDACTED_PG_PASSWORD",
|
||||||
|
"Im": "Host=43.134.235.58;Port=15432;Database=im_system;Username=rag;Password=REDACTED_PG_PASSWORD",
|
||||||
|
"Workflow": "Host=43.134.235.58;Port=15432;Database=workflow;Username=rag;Password=REDACTED_PG_PASSWORD",
|
||||||
"MongoDb": "mongodb://rag:CHANGE_ME@43.134.235.58:27017/im_system?authSource=admin",
|
"MongoDb": "mongodb://rag:CHANGE_ME@43.134.235.58:27017/im_system?authSource=admin",
|
||||||
"Redis": "43.134.235.58:16379,password=REDACTED_REDIS_PASSWORD,abortConnect=false"
|
"Redis": "43.134.235.58:16379,password=REDACTED_REDIS_PASSWORD,abortConnect=false"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -21,11 +21,9 @@ public class FileInfrastructureModule : AbpModule
|
|||||||
var services = context.Services;
|
var services = context.Services;
|
||||||
var config = services.GetConfiguration();
|
var config = services.GetConfiguration();
|
||||||
|
|
||||||
// DbContext 挂载审计拦截器,统一从 Default 连接串派生(替换 Database 名)
|
// DbContext 挂载审计拦截器;连接串由 Host appsettings 的 ConnectionStrings:File 提供
|
||||||
var baseConn = config.GetConnectionString("Default")!;
|
|
||||||
var fsConn = $"{baseConn};Database=file_system";
|
|
||||||
services.AddDbContext<FileDbContext>((sp, options) =>
|
services.AddDbContext<FileDbContext>((sp, options) =>
|
||||||
options.UseNpgsql(fsConn)
|
options.UseNpgsql(config.GetConnectionString("File")!)
|
||||||
.AddInterceptors(sp.GetRequiredService<AuditInterceptor>()));
|
.AddInterceptors(sp.GetRequiredService<AuditInterceptor>()));
|
||||||
|
|
||||||
// Scoped 生命周期:每个 HTTP 请求创建一个拦截器实例,确保 ICurrentUserContext 正确获取当前用户
|
// Scoped 生命周期:每个 HTTP 请求创建一个拦截器实例,确保 ICurrentUserContext 正确获取当前用户
|
||||||
|
|||||||
@ -23,11 +23,9 @@ public class IMInfrastructureModule : AbpModule
|
|||||||
var services = context.Services;
|
var services = context.Services;
|
||||||
var config = services.GetConfiguration();
|
var config = services.GetConfiguration();
|
||||||
|
|
||||||
// PostgreSQL:会话/参与者/群组/群成员。统一从 Default 连接串派生(替换 Database 名)
|
// PostgreSQL:会话/参与者/群组/群成员。连接串由 Host appsettings 的 ConnectionStrings:Im 提供
|
||||||
var baseConn = config.GetConnectionString("Default")!;
|
|
||||||
var imConn = $"{baseConn};Database=im_system";
|
|
||||||
services.AddDbContext<ImDbContext>((sp, options) =>
|
services.AddDbContext<ImDbContext>((sp, options) =>
|
||||||
options.UseNpgsql(imConn)
|
options.UseNpgsql(config.GetConnectionString("Im")!)
|
||||||
.AddInterceptors(sp.GetRequiredService<AuditInterceptor>()));
|
.AddInterceptors(sp.GetRequiredService<AuditInterceptor>()));
|
||||||
services.AddScoped<AuditInterceptor>();
|
services.AddScoped<AuditInterceptor>();
|
||||||
|
|
||||||
|
|||||||
@ -26,12 +26,9 @@ public class RAGInfrastructureModule : AbpModule
|
|||||||
var services = context.Services;
|
var services = context.Services;
|
||||||
var config = services.GetConfiguration();
|
var config = services.GetConfiguration();
|
||||||
|
|
||||||
// DbContext 挂载审计拦截器,拦截器从 DI 容器解析 ICurrentUserContext
|
// DbContext 挂载审计拦截器;连接串由 Host appsettings 的 ConnectionStrings:Default 提供
|
||||||
// 统一从 Default 连接串派生(替换 Database 名),改一处连接信息全模块生效
|
|
||||||
var baseConn = config.GetConnectionString("Default")!;
|
|
||||||
var ragConn = $"{baseConn};Database=rag";
|
|
||||||
services.AddDbContext<RagDbContext>((sp, options) =>
|
services.AddDbContext<RagDbContext>((sp, options) =>
|
||||||
options.UseNpgsql(ragConn, o => o.UseVector())
|
options.UseNpgsql(config.GetConnectionString("Default")!, o => o.UseVector())
|
||||||
.AddInterceptors(sp.GetRequiredService<AuditInterceptor>()));
|
.AddInterceptors(sp.GetRequiredService<AuditInterceptor>()));
|
||||||
|
|
||||||
// Scoped 生命周期:每个 HTTP 请求创建一个拦截器实例,确保 ICurrentUserContext 正确获取当前用户
|
// Scoped 生命周期:每个 HTTP 请求创建一个拦截器实例,确保 ICurrentUserContext 正确获取当前用户
|
||||||
|
|||||||
@ -19,12 +19,10 @@ public class WorkflowInfrastructureModule : AbpModule
|
|||||||
var services = context.Services;
|
var services = context.Services;
|
||||||
var config = services.GetConfiguration();
|
var config = services.GetConfiguration();
|
||||||
|
|
||||||
// 统一从 Default 连接串派生(替换 Database 名)
|
// 连接串由 Host appsettings 的 ConnectionStrings:Workflow 提供
|
||||||
var baseConn = config.GetConnectionString("Default")!;
|
|
||||||
var wfConn = $"{baseConn};Database=workflow";
|
|
||||||
services.AddDbContext<WorkflowDbContext>((sp, options) =>
|
services.AddDbContext<WorkflowDbContext>((sp, options) =>
|
||||||
{
|
{
|
||||||
options.UseNpgsql(wfConn, npgsql =>
|
options.UseNpgsql(config.GetConnectionString("Workflow")!, npgsql =>
|
||||||
{
|
{
|
||||||
npgsql.MigrationsAssembly(typeof(WorkflowDbContext).Assembly.FullName);
|
npgsql.MigrationsAssembly(typeof(WorkflowDbContext).Assembly.FullName);
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user