|
|
|
@ -1,4 +1,7 @@ |
|
|
|
using System; |
|
|
|
using JetBrains.Annotations; |
|
|
|
using Microsoft.AspNetCore.Http; |
|
|
|
using Microsoft.Extensions.Logging; |
|
|
|
using Volo.Abp.MultiTenancy; |
|
|
|
using Volo.ExtensionMethods; |
|
|
|
|
|
|
|
@ -6,6 +9,13 @@ namespace Volo.Abp.AspNetCore.MultiTenancy |
|
|
|
{ |
|
|
|
public abstract class HttpTenantResolverBase : ITenantResolver |
|
|
|
{ |
|
|
|
private readonly ILogger<HttpTenantResolverBase> _logger; |
|
|
|
|
|
|
|
protected HttpTenantResolverBase(ILogger<HttpTenantResolverBase> logger) |
|
|
|
{ |
|
|
|
_logger = logger; |
|
|
|
} |
|
|
|
|
|
|
|
public virtual void Resolve(ITenantResolveContext context) |
|
|
|
{ |
|
|
|
var httpContext = context.GetHttpContext(); |
|
|
|
@ -14,7 +24,14 @@ namespace Volo.Abp.AspNetCore.MultiTenancy |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
ResolveFromHttpContext(context, httpContext); |
|
|
|
try |
|
|
|
{ |
|
|
|
ResolveFromHttpContext(context, httpContext); |
|
|
|
} |
|
|
|
catch (Exception e) |
|
|
|
{ |
|
|
|
_logger.LogWarning(e.ToString()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void ResolveFromHttpContext(ITenantResolveContext context, HttpContext httpContext) |
|
|
|
@ -26,6 +43,6 @@ namespace Volo.Abp.AspNetCore.MultiTenancy |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
protected abstract string GetTenantIdOrNameFromHttpContextOrNull(ITenantResolveContext context,HttpContext httpContext); |
|
|
|
protected abstract string GetTenantIdOrNameFromHttpContextOrNull([NotNull] ITenantResolveContext context, [NotNull] HttpContext httpContext); |
|
|
|
} |
|
|
|
} |