MysqlDbContext.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. using FccLite.Web.Domain.FccNozzleInfo;
  2. using FccLite.Web.Domain.FccOilInfo;
  3. using FccLite.Web.Domain.FccStationInfo;
  4. using FccLite.Web.Domain.FccTankInfo;
  5. using Microsoft.EntityFrameworkCore;
  6. namespace FccLite.Web.utils.database
  7. {
  8. public class MysqlDbContext:DbContext
  9. {
  10. public MysqlDbContext(DbContextOptions<MysqlDbContext> options):base(options) { }
  11. public DbSet<FccStationInfo> FccStationInfos { get; set; }
  12. public DbSet<FccOilInfo> OilInfos { get; set; }
  13. public DbSet<FccTankInfo> TankInfos { get; set; }
  14. public DbSet<FccNozzleInfo> NozzleInfos { get; set; }
  15. protected override void OnModelCreating(ModelBuilder modelBuilder)
  16. {
  17. modelBuilder.Entity<FccTankInfo>()
  18. .HasOne(tankInfos => tankInfos.Oil)
  19. .WithMany(oilInfo => oilInfo.FccTankInfo)
  20. .HasForeignKey(tankInfo => tankInfo.OilId)
  21. .OnDelete(DeleteBehavior.Restrict);
  22. base.OnModelCreating(modelBuilder);
  23. }
  24. }
  25. }