using Microsoft.EntityFrameworkCore; namespace AVSCartonShipmentVerifier.ScanHistory; public sealed class ScanHistoryDbContext(DbContextOptions options) : DbContext(options) { public DbSet ScanHistoryEntries => Set(); public DbSet RejectedScanEntries => Set(); protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity(entity => { entity.ToTable("scan_history_entries"); entity.HasKey(x => x.Id); entity.Property(x => x.ModelNumber).HasMaxLength(128); entity.Property(x => x.UniqueNumber).HasMaxLength(128); entity.Property(x => x.ProcessedAtUtc); entity.HasIndex(x => x.ProcessedAtUtc); }); modelBuilder.Entity(entity => { entity.ToTable("rejected_scan_entries"); entity.HasKey(x => x.Id); entity.Property(x => x.RawInputValue).HasMaxLength(512); entity.Property(x => x.ModelNumber).HasMaxLength(128); entity.Property(x => x.UniqueNumber).HasMaxLength(128); entity.Property(x => x.RejectionReason).HasMaxLength(256); entity.Property(x => x.ProcessedAtUtc); entity.HasIndex(x => x.ProcessedAtUtc); }); } }