租户管理

关于多租户

我们强烈建议您 在此之前阅读  多租户文档

启用多租户

ASP.NET Boilerplate和Module Zero可以在多租户或单租户模式下运行。默认情况下禁用多租户。我们可以在我们模块的PreInitialize方法中启用它,   如下所示:

[DependsOn(typeof(AbpZeroCoreModule))]
public class MyCoreModule : AbpModule
{
    public override void PreInitialize()
    {
        Configuration.MultiTenancy.IsEnabled = true;    
    }

    ...
}

注意:即使我们的应用程序不是多租户,我们也必须定义默认租户(请参阅本文档的默认租户部分)。 

当我们 基于ASP.NET Boilerplate和Module Zero 创建项目  模板时,我们有Tenant实体和TenantManager域服务。

租户实体

租户实体代表申请的承租人。

public class Tenant : AbpTenant<Tenant, User>
{

}

它来自通用的AbpTenant类。租户实体存储在数据库的AbpTenants表中。您可以将自己的自定义属性添加到Tenant类。

AbpTenant类定义了一些基本属性,最重要的是:

AbpTenant类继承FullAuditedEntity。这意味着它具有创建,修改和删除审计属性。这也是  最后AbpTenant的ID被定义为int。

租户经理

租户管理器是一项为租户执行域逻辑的服务:

public class TenantManager : AbpTenantManager<Tenant, Role, User>
{
    public TenantManager(IRepository<Tenant> tenantRepository)
        : base(tenantRepository)
    {

    }
}

TenantManager还用于管理租户  功能您可以在此处添加自己的方法。您还可以根据自己的需要覆盖AbpTenantManager基类的任何方法。

默认租户

ASP.NET Boilerplate和Module Zero假设有一个预定义的租户,其中TenancyName为“ Default ”且Id为1在单租户应用程序中,这被用作唯一的租户。在多租户应用程序中,您可以删除它或使其成为被动。 

nidie.com.cn - 用心与你沟通