From e9a088a2ae0a11dffb08c33cb8d1ec648c9a7b2a Mon Sep 17 00:00:00 2001 From: cKey <35512826+colinin@users.noreply.github.com> Date: Wed, 9 Sep 2020 14:06:54 +0800 Subject: [PATCH] Fix unreasonable tenant storage interface implementation --- .../Abp/MultiTenancy/DbFinder/TenantStore.cs | 26 +++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/aspnet-core/modules/tenants/LINGYUN.Abp.MultiTenancy.DbFinder/LINGYUN/Abp/MultiTenancy/DbFinder/TenantStore.cs b/aspnet-core/modules/tenants/LINGYUN.Abp.MultiTenancy.DbFinder/LINGYUN/Abp/MultiTenancy/DbFinder/TenantStore.cs index f3979f5f5..111e9d47e 100644 --- a/aspnet-core/modules/tenants/LINGYUN.Abp.MultiTenancy.DbFinder/LINGYUN/Abp/MultiTenancy/DbFinder/TenantStore.cs +++ b/aspnet-core/modules/tenants/LINGYUN.Abp.MultiTenancy.DbFinder/LINGYUN/Abp/MultiTenancy/DbFinder/TenantStore.cs @@ -39,6 +39,11 @@ namespace LINGYUN.Abp.MultiTenancy.DbFinder var tenantCacheItem = AsyncHelper.RunSync(async () => await GetCacheItemByNameAsync(name)); + if (tenantCacheItem == null) + { + return null; + } + return new TenantConfiguration(tenantCacheItem.Id, tenantCacheItem.Name) { ConnectionStrings = tenantCacheItem.ConnectionStrings @@ -50,6 +55,11 @@ namespace LINGYUN.Abp.MultiTenancy.DbFinder var tenantCacheItem = AsyncHelper.RunSync(async () => await GetCacheItemByIdAsync(id)); + if (tenantCacheItem == null) + { + return null; + } + return new TenantConfiguration(tenantCacheItem.Id, tenantCacheItem.Name) { ConnectionStrings = tenantCacheItem.ConnectionStrings @@ -60,6 +70,11 @@ namespace LINGYUN.Abp.MultiTenancy.DbFinder { var tenantCacheItem = await GetCacheItemByNameAsync(name); + if (tenantCacheItem == null) + { + return null; + } + return new TenantConfiguration(tenantCacheItem.Id, tenantCacheItem.Name) { ConnectionStrings = tenantCacheItem.ConnectionStrings @@ -70,6 +85,11 @@ namespace LINGYUN.Abp.MultiTenancy.DbFinder { var tenantCacheItem = await GetCacheItemByIdAsync(id); + if (tenantCacheItem == null) + { + return null; + } + return new TenantConfiguration(tenantCacheItem.Id, tenantCacheItem.Name) { ConnectionStrings = tenantCacheItem.ConnectionStrings @@ -97,7 +117,8 @@ namespace LINGYUN.Abp.MultiTenancy.DbFinder if (tenant == null) { Logger.LogWarning($"Can not found tenant by id: {id}"); - throw new AbpException($"Can not found tenant by id: {id}"); + // throw new AbpException($"Can not found tenant by id: {id}"); + return null; } var connectionStrings = new ConnectionStrings(); foreach (var tenantConnectionString in tenant.ConnectionStrings) @@ -134,7 +155,8 @@ namespace LINGYUN.Abp.MultiTenancy.DbFinder if (tenant == null) { Logger.LogWarning($"Can not found tenant by name: {name}"); - throw new AbpException($"Can not found tenant by name: {name}"); + // throw new AbpException($"Can not found tenant by name: {name}"); + return null; } var connectionStrings = new ConnectionStrings(); foreach (var tenantConnectionString in tenant.ConnectionStrings)