|
|
|
@ -30,6 +30,21 @@ namespace Volo.Abp.Data.MultiTenancy
|
|
|
|
|
{
|
|
|
|
|
options.ConnectionStrings.Default = "default-value";
|
|
|
|
|
options.ConnectionStrings["db1"] = "db1-default-value";
|
|
|
|
|
options.ConnectionStrings["Saas"] = "Saas-default-value";
|
|
|
|
|
options.ConnectionStrings["Admin"] = "Admin-default-value";
|
|
|
|
|
|
|
|
|
|
options.Databases.Configure("Saas", database =>
|
|
|
|
|
{
|
|
|
|
|
database.MappedConnections.Add("Saas1");
|
|
|
|
|
database.MappedConnections.Add("Saas2");
|
|
|
|
|
database.IsUsedByTenants = false;
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
options.Databases.Configure("Admin", database =>
|
|
|
|
|
{
|
|
|
|
|
database.MappedConnections.Add("Admin1");
|
|
|
|
|
database.MappedConnections.Add("Admin2");
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
services.Configure<AbpDefaultTenantStoreOptions>(options =>
|
|
|
|
@ -41,7 +56,8 @@ namespace Volo.Abp.Data.MultiTenancy
|
|
|
|
|
ConnectionStrings =
|
|
|
|
|
{
|
|
|
|
|
{ ConnectionStrings.DefaultConnectionStringName, "tenant1-default-value"},
|
|
|
|
|
{"db1", "tenant1-db1-value"}
|
|
|
|
|
{"db1", "tenant1-db1-value"},
|
|
|
|
|
{"Admin", "tenant1-Admin-value"}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
new TenantConfiguration(_tenant2Id, "tenant2")
|
|
|
|
@ -55,12 +71,16 @@ namespace Volo.Abp.Data.MultiTenancy
|
|
|
|
|
//No tenant in current context
|
|
|
|
|
(await _connectionResolver.ResolveAsync()).ShouldBe("default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("db1")).ShouldBe("db1-default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("Saas1")).ShouldBe("Saas-default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("Admin2")).ShouldBe("Admin-default-value");
|
|
|
|
|
|
|
|
|
|
//Overriden connection strings for tenant1
|
|
|
|
|
using (_currentTenant.Change(_tenant1Id))
|
|
|
|
|
{
|
|
|
|
|
(await _connectionResolver.ResolveAsync()).ShouldBe("tenant1-default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("db1")).ShouldBe("tenant1-db1-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("Saas1")).ShouldBe("tenant1-default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("Admin2")).ShouldBe("tenant1-Admin-value");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//No tenant in current context
|
|
|
|
@ -72,6 +92,8 @@ namespace Volo.Abp.Data.MultiTenancy
|
|
|
|
|
{
|
|
|
|
|
(await _connectionResolver.ResolveAsync()).ShouldBe("default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("db1")).ShouldBe("db1-default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("Saas1")).ShouldBe("Saas-default-value");
|
|
|
|
|
(await _connectionResolver.ResolveAsync("Admin2")).ShouldBe("Admin-default-value");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|