using cuqmbr.TravelGuide.Domain.Entities; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; namespace cuqmbr.TravelGuide.Persistence.InMemory.Configurations; public class RegionConfiguration : BaseConfiguration { public override void Configure(EntityTypeBuilder builder) { builder .ToTable("regions"); base.Configure(builder); builder .Property(r => r.Name) .HasColumnName("name") // .HasColumnType("varchar(64)") .IsRequired(true); builder .Property(r => r.CountryId) .HasColumnName("country_id") // .HasColumnType("bigint") .IsRequired(true); builder .HasOne(r => r.Country) .WithMany(c => c.Regions) .HasForeignKey(r => r.CountryId) .HasConstraintName( "fk_" + $"{builder.Metadata.GetTableName()}_" + $"{builder.Property(r => r.CountryId).Metadata.GetColumnName()}") .OnDelete(DeleteBehavior.Cascade); } }