Files
Partsource/PartSource.Data/Contexts/FitmentContext.cs
2023-09-13 09:33:14 -04:00

41 lines
1.2 KiB
C#

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<FitmentContext> contextOptions) : base(contextOptions) { }
public DbSet<DcfMapping> DcfMappings { get; set; }
public DbSet<Fitment> Fitments { get; set; }
public DbSet<FitmentNote> FitmentNotes { get; set; }
public DbSet<Vehicle> Vehicles { get; set; }
public DbSet<VehicleFitment> VehicleFitments { get; set; }
public DbSet<Wiper> Wipers { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<DcfMapping>().HasKey(d => new { d.LineCode, d.WhiCode });
modelBuilder.Entity<Fitment>().HasKey(f => new { f.BaseVehicleId, f.EngineConfigId, f.LineCode, f.PartNumber });
modelBuilder.Entity<Wiper>().HasKey(f => new { f.BaseVehicleId, f.PartNumber, f.LineCode, f.Position});
foreach (IMutableEntityType entityType in modelBuilder.Model.GetEntityTypes())
{
entityType.SetTableName(entityType.ClrType.Name);
}
}
}
}