Refactored ItemValue structure

This commit is contained in:
JPVenson
2024-10-10 14:32:49 +00:00
parent 3e7ce5e1df
commit ee0dad6f43
14 changed files with 1970 additions and 106 deletions

View File

@@ -15,5 +15,7 @@ public class AncestorIdConfiguration : IEntityTypeConfiguration<AncestorId>
{
builder.HasKey(e => new { e.ItemId, e.ParentItemId });
builder.HasIndex(e => e.ParentItemId);
builder.HasOne(e => e.ParentItem);
builder.HasOne(e => e.Item);
}
}

View File

@@ -13,7 +13,7 @@ public class ItemValuesConfiguration : IEntityTypeConfiguration<ItemValue>
/// <inheritdoc/>
public void Configure(EntityTypeBuilder<ItemValue> builder)
{
builder.HasKey(e => new { e.ItemId, e.Type, e.Value });
builder.HasIndex(e => new { e.ItemId, e.Type, e.CleanValue });
builder.HasKey(e => e.ItemValueId);
builder.HasIndex(e => new { e.Type, e.CleanValue });
}
}

View File

@@ -0,0 +1,20 @@
using System;
using Jellyfin.Data.Entities;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace Jellyfin.Server.Implementations.ModelConfiguration;
/// <summary>
/// itemvalues Configuration.
/// </summary>
public class ItemValuesMapConfiguration : IEntityTypeConfiguration<ItemValueMap>
{
/// <inheritdoc/>
public void Configure(EntityTypeBuilder<ItemValueMap> builder)
{
builder.HasKey(e => new { e.ItemValueId, e.ItemId });
builder.HasOne(e => e.Item);
builder.HasOne(e => e.ItemValue);
}
}