using System;
|
using System.Collections.Generic;
|
using System.ComponentModel;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace WIDESEA_Core.Tenants
|
{
|
/// <summary>
|
/// 标识 多租户 的业务表 <br/>
|
/// 默认设置是多库 <br/>
|
/// 公共表无需区分 直接使用主库 各自业务在各自库中 <br/>
|
/// </summary>
|
[AttributeUsage(AttributeTargets.Class)]
|
public class MultiTenantAttribute : Attribute
|
{
|
public MultiTenantAttribute()
|
{
|
}
|
|
public MultiTenantAttribute(TenantTypeEnum tenantType)
|
{
|
TenantType = tenantType;
|
}
|
|
|
public TenantTypeEnum TenantType { get; set; } = TenantTypeEnum.Db;
|
}
|
|
/// <summary>
|
/// 租户隔离方案
|
/// </summary>
|
public enum TenantTypeEnum
|
{
|
None = 0,
|
|
/// <summary>
|
/// Id隔离
|
/// </summary>
|
[Description("Id隔离")]
|
Id = 1,
|
|
/// <summary>
|
/// 库隔离
|
/// </summary>
|
[Description("库隔离")]
|
Db = 2,
|
|
/// <summary>
|
/// 表隔离
|
/// </summary>
|
[Description("表隔离")]
|
Tables = 3,
|
}
|
}
|