using Microsoft.Extensions.Configuration; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using YY.Admin.Core.Const; namespace YY.Admin.Core.Option { /// /// 数据库配置选项 /// public sealed class DbConnectionOptions { /// /// 启用控制台打印SQL /// public bool EnableConsoleSql { get; set; } /// /// 超级管理员是否忽略逻辑删除过滤器 /// public bool SuperAdminIgnoreIDeletedFilter { get; set; } /// /// 数据库 /// public List ConnectionConfigs { get; set; } } /// /// 数据库连接配置 /// public sealed class DbConnectionConfig : ConnectionConfig { /// /// 数据库名称 /// public string DbNickName { get; set; } /// /// 数据库配置 /// public DbSettings DbSettings { get; set; } /// /// 表配置 /// public TableSettings TableSettings { get; set; } /// /// 种子配置 /// public SeedSettings SeedSettings { get; set; } /// /// 隔离方式 /// public TenantTypeEnum TenantType { get; set; } = TenantTypeEnum.Id; /// /// 数据库存储目录(仅SqlServer支持指定目录创建) /// public string DatabaseDirectory { get; set; } } /// /// 数据库配置 /// public sealed class DbSettings { /// /// 启用库表初始化 /// public bool EnableInitDb { get; set; } /// /// 启用视图初始化 /// public bool EnableInitView { get; set; } /// /// 启用库表差异日志 /// public bool EnableDiffLog { get; set; } /// /// 启用驼峰转下划线 /// public bool EnableUnderLine { get; set; } /// /// 启用数据库连接串加密策略 /// public bool EnableConnStringEncrypt { get; set; } } /// /// 表配置 /// public sealed class TableSettings { /// /// 启用表初始化 /// public bool EnableInitTable { get; set; } /// /// 启用表增量更新 /// public bool EnableIncreTable { get; set; } } /// /// 种子配置 /// public sealed class SeedSettings { /// /// 启用种子初始化 /// public bool EnableInitSeed { get; set; } /// /// 启用种子增量更新 /// public bool EnableIncreSeed { get; set; } } }