using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata; using PartSource.Data.Models; using System; using System.Collections.Generic; using System.Text; namespace PartSource.Data.Contexts { public class FitmentContext : DbContext { public FitmentContext(DbContextOptions contextOptions) : base(contextOptions) { } public DbSet DcfMappings { get; set; } public DbSet Parts { get; set; } public DbSet Fitments { get; set; } public DbSet FitmentNotes { get; set; } public DbSet ProductTypes { get; set; } public DbSet Vehicles { get; set; } public DbSet VehicleFitments { get; set; } public DbSet Wipers { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity().HasKey(d => new { d.LineCode, d.WhiCode }); modelBuilder.Entity().HasKey(f => new { f.BaseVehicleId, f.EngineConfigId, f.LineCode, f.PartNumber }); modelBuilder.Entity().HasKey(f => new { f.BaseVehicleId, f.PartNumber, f.LineCode, f.Position}); modelBuilder.Entity().HasNoKey(); foreach (IMutableEntityType entityType in modelBuilder.Model.GetEntityTypes()) { entityType.SetTableName(entityType.ClrType.Name); } } } }