using ASC.Common; using Microsoft.EntityFrameworkCore; namespace ASC.Core.Common.EF { public partial class UserDbContext : BaseDbContext { public DbSet Users { get; set; } public DbSet UserSecurity { get; set; } public DbSet Photos { get; set; } public DbSet Acl { get; set; } public DbSet Groups { get; set; } public DbSet UserGroups { get; set; } public DbSet Subscriptions { get; set; } public DbSet SubscriptionMethods { get; set; } public UserDbContext() { } public UserDbContext(DbContextOptions options) : base(options) { Database.EnsureCreated(); } protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder .MySqlAddAcl() .MySqlAddSubscription() .MySqlAddSubscriptionMethod() .MySqlAddUser(); modelBuilder.MySqlAddDbGroup(); modelBuilder.MySqlAddUserSecurity(); modelBuilder.MySqlAddUserGroup(); modelBuilder.MySqlAddUserPhoto(); modelBuilder .PgSqlAddAcl() .PgSqlAddSubscription() .PgSqlAddSubscriptionMethod() .PgSqlAddUser(); modelBuilder.PgSqlAddDbGroup(); modelBuilder.PgSqlAddUserSecurity(); modelBuilder.PgSqlAddUserGroup(); modelBuilder.PgSqlAddUserPhoto(); OnModelCreatingPartial(modelBuilder); } partial void OnModelCreatingPartial(ModelBuilder modelBuilder); } public static class UserDbExtension { public static DIHelper AddUserDbContextService(this DIHelper services) { return services.AddDbContextManagerService(); } } }