using ErsatzTV.Core.Domain; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; namespace ErsatzTV.Infrastructure.Data.Configurations { public class ChannelConfiguration : IEntityTypeConfiguration { public void Configure(EntityTypeBuilder builder) { builder.HasIndex(c => c.Number) .IsUnique(); builder.HasMany(c => c.Playouts) // TODO: is this correct, or should we have one to one? .WithOne(p => p.Channel) .HasForeignKey(p => p.ChannelId) .OnDelete(DeleteBehavior.Cascade); } } }