39 lines
1.2 KiB
C#
39 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<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);
|
|
}
|
|
}
|
|
}
|
|
}
|