From 8e2231df90ea189b887cf1844521e300ff6c5421 Mon Sep 17 00:00:00 2001
From: Falcon <12919280+falconfly@user.noreply.gitee.com>
Date: Mon, 19 Aug 2024 16:03:11 +0800
Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=A4=9A=E7=A7=9F=E6=88=B7?=
=?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Falcon.SugarApi/DatabaseManager/DbContextBase.cs | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/Falcon.SugarApi/DatabaseManager/DbContextBase.cs b/Falcon.SugarApi/DatabaseManager/DbContextBase.cs
index 6a94a61..10c810c 100644
--- a/Falcon.SugarApi/DatabaseManager/DbContextBase.cs
+++ b/Falcon.SugarApi/DatabaseManager/DbContextBase.cs
@@ -2,6 +2,7 @@
using Microsoft.Extensions.Logging;
using SqlSugar;
using System;
+using System.Linq;
namespace Falcon.SugarApi.DatabaseManager
{
@@ -24,6 +25,17 @@ namespace Falcon.SugarApi.DatabaseManager
this.Logger = service.GetService(typeof(ILogger<>).MakeGenericType(GetType())) as ILogger;
ConfigureExternalServices(this.CurrentConnectionConfig);
}
+ ///
+ /// 使用服务提供程序和配置集合初始化数据库上下文
+ ///
+ /// 服务提供程序
+ /// 数据库上下文配置集合
+ public DbContextBase(IServiceProvider service,params ConnectionConfig[] configs) : base(configs.ToList()) {
+ this.Logger = service.GetService(typeof(ILogger<>).MakeGenericType(GetType())) as ILogger;
+ foreach(var c in configs) {
+ ConfigureExternalServices(this.GetConnection(c.ConfigId).CurrentConnectionConfig);
+ }
+ }
private static void ConfigureExternalServices(ConnectionConfig config) {
config.ConfigureExternalServices ??= new ConfigureExternalServices();