Tools/ABPCMS.Migrator/MultiTenantMigrateExecuter.cs
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Configuration;
using Abp.Dependency;
using Abp.Domain.Repositories;
using Abp.Domain.Uow;
using Abp.Extensions;
using Abp.MultiTenancy;
using Abp.Runtime.Security;
using ABPCMS.MultiTenancy;
namespace ABPCMS.Migrator
{
public class MultiTenantMigrateExecuter : ITransientDependency
{
public Log Log { get; private set; }
private readonly IAbpZeroDbMigrator _migrator;
private readonly IRepository<Tenant> _tenantRepository;
private readonly IDbPerTenantConnectionStringResolver _connectionStringResolver;
public MultiTenantMigrateExecuter(
IAbpZeroDbMigrator migrator,
IRepository<Tenant> tenantRepository,
Log log,
IDbPerTenantConnectionStringResolver connectionStringResolver)
{
Log = log;
_connectionStringResolver = connectionStringResolver;
_migrator = migrator;
_tenantRepository = tenantRepository;
}
public void Run(bool skipConnVerification)
{
var hostConnStr = _connectionStringResolver.GetNameOrConnectionString(new ConnectionStringResolveArgs(MultiTenancySides.Host));
if (hostConnStr.IsNullOrWhiteSpace())
{
Log.Write("Configuration file should contain a connection string named 'Default'");
return;
}
Log.Write("Host database: " + hostConnStr);
if (!skipConnVerification)
{
Log.Write("Continue to migration for this host database and all tenants..? (Y/N): ");
var command = Console.ReadLine();
if (!command.IsIn("Y", "y"))
{
Log.Write("Migration canceled.");
return;
}
}
Log.Write("HOST database migration started...");
try
{
_migrator.CreateOrMigrateForHost();
后面还有 51 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
