diff options
Diffstat (limited to 'src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs')
| -rw-r--r-- | src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs b/src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs new file mode 100644 index 0000000000..79262e4c8d --- /dev/null +++ b/src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs @@ -0,0 +1,21 @@ +using Jellyfin.Database.Implementations.Entities; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Metadata.Builders; + +namespace Jellyfin.Database.Implementations.ModelConfiguration; + +/// <summary> +/// FluentAPI configuration for the BaseItemImageInfo entity. +/// </summary> +public class BaseItemImageInfoConfiguration : IEntityTypeConfiguration<BaseItemImageInfo> +{ + /// <inheritdoc/> + public void Configure(EntityTypeBuilder<BaseItemImageInfo> builder) + { + builder.HasKey(e => e.Id); + builder.HasOne(e => e.Item).WithMany(e => e.Images).HasForeignKey(e => e.ItemId); + + // Composite index for filtering by item and image type (also covers ItemId-only lookups) + builder.HasIndex(e => new { e.ItemId, e.ImageType }); + } +} |
