diff --git a/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/ChangeTypeConfiguration.cs b/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/ChangeTypeConfiguration.cs index 4783d1ec3..0dd5afbf4 100644 --- a/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/ChangeTypeConfiguration.cs +++ b/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/ChangeTypeConfiguration.cs @@ -14,7 +14,6 @@ public virtual void Configure(EntityTypeBuilder builder) // TODO: register and resolve INameRewriter var nr = new SnakeCaseNameRewriter(CultureInfo.InvariantCulture); - builder.ToTable($"{nr.RewriteName(nameof(Change))}s"); builder.Property(nameof(Queries.Entities.Change.Id)); // TODO: TDiscriminator should really be AggregateType rather than string but needs name rewriting diff --git a/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListTypeConfiguration.cs b/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListTypeConfiguration.cs index d07eabbc8..388fa034f 100644 --- a/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListTypeConfiguration.cs +++ b/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListTypeConfiguration.cs @@ -9,8 +9,11 @@ internal class FilterListTypeConfiguration : IEntityTypeConfiguration builder) { builder.Property(nameof(Queries.Entities.FilterList.Id)); - builder.HasMany("_changes").WithOne(); - builder.Navigation("_changes").AutoInclude(); - builder.Navigation(f => f.ViewUrls).AutoInclude(); + builder.HasMany(f => f.Changes) + .WithOne(c => c.Current); + builder.Navigation(f => f.Changes) + .AutoInclude(); + builder.Navigation(f => f.ViewUrls) + .AutoInclude(); } } diff --git a/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListViewUrlTypeConfiguration.cs b/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListViewUrlTypeConfiguration.cs index 829b2a581..1ba97b8cd 100644 --- a/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListViewUrlTypeConfiguration.cs +++ b/services/Directory/FilterLists.Directory.Infrastructure/Persistence/Commands/EntityTypeConfigurations/FilterListViewUrlTypeConfiguration.cs @@ -1,4 +1,6 @@ -using FilterLists.Directory.Domain.Aggregates.FilterLists; +using System.Globalization; +using EFCore.NamingConventions.Internal; +using FilterLists.Directory.Domain.Aggregates.FilterLists; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; @@ -8,7 +10,10 @@ internal class FilterListViewUrlTypeConfiguration : IEntityTypeConfiguration builder) { - builder.ToTable(nameof(FilterListViewUrl) + "s"); + // TODO: register and resolve INameRewriter + var nr = new SnakeCaseNameRewriter(CultureInfo.InvariantCulture); + + builder.ToTable($"{nr.RewriteName(nameof(Queries.Entities.FilterListViewUrl))}s"); builder.Property(nameof(Queries.Entities.FilterListViewUrl.Id)); } }