in App/src/Events-Tenant.Common/Repositories/TenantRepository.cs [195:223]
public async Task<VenueModel> GetVenueDetails(int tenantId)
{
using (var context = CreateContext(tenantId))
{
//get database name
string databaseName, databaseServerName;
PointMapping<int> mapping;
if (Sharding.ShardMap.TryGetMappingForKey(tenantId, out mapping))
{
using (SqlConnection sqlConn = Sharding.ShardMap.OpenConnectionForKey(tenantId, _connectionString))
{
databaseName = sqlConn.Database;
databaseServerName = sqlConn.DataSource.Split(':').Last().Split(',').First();
}
var venue = await context.Venue.FirstOrDefaultAsync();
if (venue != null)
{
var venueModel = venue.ToVenueModel();
venueModel.DatabaseName = databaseName;
venueModel.DatabaseServerName = databaseServerName;
return venueModel;
}
}
return null;
}
}