Move model configuration to its own classes

This commit is contained in:
Fernando Fernández
2021-09-06 21:05:21 +02:00
parent c2652d21e1
commit f4af78817d
9 changed files with 238 additions and 92 deletions

View File

@@ -0,0 +1,29 @@
using Jellyfin.Data.Entities;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace Jellyfin.Server.Implementations.ModelConfiguration
{
/// <summary>
/// FluentAPI configuration for the DisplayPreferencesConfiguration entity.
/// </summary>
public class DisplayPreferencesConfiguration : IEntityTypeConfiguration<DisplayPreferences>
{
/// <inheritdoc/>
public void Configure(EntityTypeBuilder<DisplayPreferences> builder)
{
// Delete behaviour
builder
.HasMany(d => d.HomeSections)
.WithOne()
.OnDelete(DeleteBehavior.Cascade);
// Indexes
builder
.HasIndex(entity => new { entity.UserId, entity.ItemId, entity.Client })
.IsUnique();
}
}
}