using System; using APT.Infrastructure.Api; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; namespace APT.Infrastructure.EF { public abstract class TenantSettings { public string Key { get; set; } public ConnectionResolverType ConnectionType { get; set; } public DbIntegrationType DbType { get; set; } public Func ConnectionGenerator { get; set; } public string ConnectionName { get; set; } public string ConnectionPrefix { get; set; } public Action DbContextOptionAction { get; set; } public Func TableNameFunc { get; set; } public Func SchemaFunc { get; set; } public Action DbContextSetup { get; set; } } public class TenantSettings where TDbContext : DbContext { public string Key { get; set; } public ConnectionResolverType ConnectionType { get; set; } public DbIntegrationType DbType { get; set; } public Func ConnectionGenerator { get; set; } public string ConnectionName { get; set; } public string ConnectionPrefix { get; set; } public Action DbContextOptionAction { get; set; } public Func TableNameFunc { get; set; } public Func SchemaFunc { get; set; } public Action DbContextSetup { get; set; } } }