Skip to content

Commit c607681

Browse files
committed
Simplify detection for already configured and seeded types
1 parent bf7f526 commit c607681

1 file changed

Lines changed: 2 additions & 5 deletions

File tree

src/SpatialFocus.EntityFrameworkCore.Extensions/EnumLookupExtension.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@ namespace SpatialFocus.EntityFrameworkCore.Extensions
1717

1818
public static class EnumLookupExtension
1919
{
20-
private static List<Type> ConcreteTypeSeededList { get; set; } = new List<Type>();
21-
2220
public static void ConfigureEnumLookup(this ModelBuilder modelBuilder, EnumLookupOptions enumOptions)
2321
{
2422
foreach (IMutableProperty property in modelBuilder.Model.GetEntityTypes().SelectMany(x => x.GetProperties()).ToList())
@@ -88,6 +86,7 @@ private static void ConfigureEnumLookupForProperty(ModelBuilder modelBuilder, En
8886
bool usesDescription = enumValueDescriptions.Values.Any(x => x != null);
8987

9088
Type enumLookupEntityType = GetEnumLookupEntityType(enumOptions, usesDescription, enumType);
89+
bool shouldSkipEnumLookupTableConfiguration = modelBuilder.Model.FindEntityType(enumLookupEntityType) != null;
9190

9291
configureEntityType(enumLookupEntityType);
9392

@@ -98,13 +97,11 @@ private static void ConfigureEnumLookupForProperty(ModelBuilder modelBuilder, En
9897
configureEntityTypeConversion(valueConverter);
9998
}
10099

101-
if (ConcreteTypeSeededList.Contains(enumLookupEntityType))
100+
if (shouldSkipEnumLookupTableConfiguration)
102101
{
103102
return;
104103
}
105104

106-
ConcreteTypeSeededList.Add(enumLookupEntityType);
107-
108105
EntityTypeBuilder enumLookupBuilder = modelBuilder.Entity(enumLookupEntityType);
109106
ConfigureEnumLookupTable(enumLookupBuilder, enumOptions, enumType);
110107

0 commit comments

Comments
 (0)