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.
25 lines
842 B
25 lines
842 B
using ErsatzTV.Core.Domain; |
|
using Microsoft.EntityFrameworkCore; |
|
using Microsoft.EntityFrameworkCore.Metadata.Builders; |
|
|
|
namespace ErsatzTV.Infrastructure.Data.Configurations; |
|
|
|
public class LibraryFolderConfiguration : IEntityTypeConfiguration<LibraryFolder> |
|
{ |
|
public void Configure(EntityTypeBuilder<LibraryFolder> builder) |
|
{ |
|
builder.ToTable("LibraryFolder"); |
|
|
|
builder.HasOne(f => f.Parent) |
|
.WithMany(p => p.Children) |
|
.HasForeignKey(f => f.ParentId) |
|
.IsRequired(false) |
|
.OnDelete(DeleteBehavior.Restrict); |
|
|
|
builder.HasOne(f => f.ImageFolderDuration) |
|
.WithOne(ifd => ifd.LibraryFolder) |
|
.HasForeignKey<ImageFolderDuration>(ifd => ifd.LibraryFolderId) |
|
.IsRequired(false) |
|
.OnDelete(DeleteBehavior.Cascade); |
|
} |
|
}
|
|
|