using Abp.Data; using Abp.Dependency; using Abp.Domain.Repositories; using Abp.Domain.Uow; using Abp.Extensions; using Abp.MultiTenancy; using Abp.Runtime.Security; using SplashPage.EntityFrameworkCore.Seed; using SplashPage.MultiTenancy; using SplashPage.Splash; using System; using System.Collections.Generic; using System.Data.Common; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SplashPage.Benchmarks { public class Bench : ITransientDependency { private readonly IRepository _tenantRepository; private readonly IDbPerTenantConnectionStringResolver _connectionStringResolver; public Bench( IRepository tenantRepository, IDbPerTenantConnectionStringResolver connectionStringResolver) { _tenantRepository = tenantRepository; _connectionStringResolver = connectionStringResolver; } public void Run(bool skipConnVerification) { //var hostConnStr = CensorConnectionString(_connectionStringResolver.GetNameOrConnectionString(new ConnectionStringResolveArgs(MultiTenancySides.Host))); var tenant = _tenantRepository.GetAllList(); Console.WriteLine($"test: {tenant.Count}"); } private static string CensorConnectionString(string connectionString) { var builder = new DbConnectionStringBuilder { ConnectionString = connectionString }; var keysToMask = new[] { "password", "pwd", "user id", "uid" }; foreach (var key in keysToMask) { if (builder.ContainsKey(key)) { builder[key] = "*****"; } } return builder.ToString(); } } }