Browse Source

Added notes.

pull/81/head
Halil İbrahim Kalkan 10 years ago
parent
commit
00ab8c162e
  1. 7
      src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/AbpAspNetMultiTenancyModule.cs
  2. 2
      src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/QueryStringTenantResolver.cs
  3. 2
      test/Volo.Abp.AspNetCore.MultiTenancy.Tests/Volo/Abp/AspNetCore/MultiTenancy/AspNetCoreMultiTenancy_Tests.cs

7
src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/AbpAspNetMultiTenancyModule.cs

@ -12,6 +12,13 @@ namespace Volo.Abp.AspNetCore.MultiTenancy
services.Configure<MultiTenancyOptions>(options => services.Configure<MultiTenancyOptions>(options =>
{ {
options.TenantResolvers.Insert(0, new QueryStringTenantResolver()); options.TenantResolvers.Insert(0, new QueryStringTenantResolver());
//TODO: Web tenant resolvers:
// values can be tenant id or name, should be validated first by an abstraction (say, ITenantStore over ITenantManager)!
//- domain/subdomain (not added by default)
//- route {tenantId}
//+ querystring
//- header
//- cookie
}); });
services.AddAssemblyOf<AbpAspNetMultiTenancyModule>(); services.AddAssemblyOf<AbpAspNetMultiTenancyModule>();

2
src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/QueryStringTenantResolver.cs

@ -6,7 +6,7 @@ namespace Volo.Abp.AspNetCore.MultiTenancy
{ {
public class QueryStringTenantResolver : ITenantResolver, ITransientDependency public class QueryStringTenantResolver : ITenantResolver, ITransientDependency
{ {
public const string TenantIdKey = "_Abp.TenantId"; public const string TenantIdKey = "__tenantId";
public void Resolve(ICurrentTenantResolveContext context) public void Resolve(ICurrentTenantResolveContext context)
{ {

2
test/Volo.Abp.AspNetCore.MultiTenancy.Tests/Volo/Abp/AspNetCore/MultiTenancy/AspNetCoreMultiTenancy_Tests.cs

@ -23,7 +23,5 @@ namespace Volo.Abp.AspNetCore.MultiTenancy
var result = await GetResponseAsObjectAsync<Dictionary<string, string>>($"http://abp.io?{QueryStringTenantResolver.TenantIdKey}={testTenantId}"); var result = await GetResponseAsObjectAsync<Dictionary<string, string>>($"http://abp.io?{QueryStringTenantResolver.TenantIdKey}={testTenantId}");
result["TenantId"].ShouldBe(testTenantId); result["TenantId"].ShouldBe(testTenantId);
} }
//TODO: Specify tenant in the header, cookie, domain, subdomain, route, querystring and so on...
} }
} }

Loading…
Cancel
Save