using Imprink.Domain.Entities; using Imprink.Infrastructure.Configuration; using Microsoft.AspNetCore.Identity.EntityFrameworkCore; using Microsoft.EntityFrameworkCore; namespace Imprink.Infrastructure.Database; public class ApplicationDbContext(DbContextOptions options) : DbContext(options) { public DbSet Products { get; set; } public DbSet ProductVariants { get; set; } public DbSet Orders { get; set; } public DbSet
Addresses { get; set; } public DbSet OrderStatuses { get; set; } public DbSet ShippingStatuses { get; set; } public DbSet Users { get; set; } public DbSet UserRole { get; set; } public DbSet Roles { get; set; } public DbSet Categories { get; set; } public DbSet OrderAddresses { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.ApplyConfiguration(new ProductConfiguration()); modelBuilder.ApplyConfiguration(new ProductVariantConfiguration()); modelBuilder.ApplyConfiguration(new OrderConfiguration()); modelBuilder.ApplyConfiguration(new OrderAddressConfiguration()); modelBuilder.ApplyConfiguration(new AddressConfiguration()); modelBuilder.ApplyConfiguration(new OrderStatusConfiguration()); modelBuilder.ApplyConfiguration(new ShippingStatusConfiguration()); modelBuilder.ApplyConfiguration(new CategoryConfiguration()); modelBuilder.ApplyConfiguration(new RoleConfiguration()); modelBuilder.ApplyConfiguration(new UserConfiguration()); modelBuilder.ApplyConfiguration(new UserRoleConfiguration()); } }