mirror of https://github.com/ErsatzTV/ErsatzTV.git
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							73 lines
						
					
					
						
							2.3 KiB
						
					
					
				
			
		
		
	
	
							73 lines
						
					
					
						
							2.3 KiB
						
					
					
				using ErsatzTV.Core.Domain; | 
						|
using Microsoft.EntityFrameworkCore; | 
						|
using Microsoft.EntityFrameworkCore.Metadata.Builders; | 
						|
 | 
						|
namespace ErsatzTV.Infrastructure.Data.Configurations; | 
						|
 | 
						|
public class ProgramScheduleItemConfiguration : IEntityTypeConfiguration<ProgramScheduleItem> | 
						|
{ | 
						|
    public void Configure(EntityTypeBuilder<ProgramScheduleItem> builder) | 
						|
    { | 
						|
        builder.ToTable("ProgramScheduleItem"); | 
						|
 | 
						|
        builder.HasOne(i => i.Collection) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.CollectionId) | 
						|
            .OnDelete(DeleteBehavior.Cascade) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.MediaItem) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.MediaItemId) | 
						|
            .OnDelete(DeleteBehavior.Cascade) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.MultiCollection) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.MultiCollectionId) | 
						|
            .OnDelete(DeleteBehavior.Cascade) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.SmartCollection) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.SmartCollectionId) | 
						|
            .OnDelete(DeleteBehavior.Cascade) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.PreRollFiller) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.PreRollFillerId) | 
						|
            .OnDelete(DeleteBehavior.SetNull) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.MidRollFiller) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.MidRollFillerId) | 
						|
            .OnDelete(DeleteBehavior.SetNull) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.PostRollFiller) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.PostRollFillerId) | 
						|
            .OnDelete(DeleteBehavior.SetNull) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.TailFiller) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.TailFillerId) | 
						|
            .OnDelete(DeleteBehavior.SetNull) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.FallbackFiller) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.FallbackFillerId) | 
						|
            .OnDelete(DeleteBehavior.SetNull) | 
						|
            .IsRequired(false); | 
						|
 | 
						|
        builder.HasOne(i => i.Watermark) | 
						|
            .WithMany() | 
						|
            .HasForeignKey(i => i.WatermarkId) | 
						|
            .OnDelete(DeleteBehavior.SetNull) | 
						|
            .IsRequired(false); | 
						|
    } | 
						|
}
 | 
						|
 |