DisplayPreferencesConfiguration.cs 876 B

1234567891011121314151617181920212223242526272829
  1. using Jellyfin.Data.Entities;
  2. using Microsoft.EntityFrameworkCore;
  3. using Microsoft.EntityFrameworkCore.Metadata.Builders;
  4. namespace Jellyfin.Server.Implementations.ModelConfiguration
  5. {
  6. /// <summary>
  7. /// FluentAPI configuration for the DisplayPreferencesConfiguration entity.
  8. /// </summary>
  9. public class DisplayPreferencesConfiguration : IEntityTypeConfiguration<DisplayPreferences>
  10. {
  11. /// <inheritdoc/>
  12. public void Configure(EntityTypeBuilder<DisplayPreferences> builder)
  13. {
  14. // Delete behaviour
  15. builder
  16. .HasMany(d => d.HomeSections)
  17. .WithOne()
  18. .OnDelete(DeleteBehavior.Cascade);
  19. // Indexes
  20. builder
  21. .HasIndex(entity => new { entity.UserId, entity.ItemId, entity.Client })
  22. .IsUnique();
  23. }
  24. }
  25. }