diff --git a/src/ReC.Infrastructure/Options/Shared/EntityBaseOptions.cs b/src/ReC.Infrastructure/Options/Shared/EntityBaseOptions.cs index 8379bd9..bd73870 100644 --- a/src/ReC.Infrastructure/Options/Shared/EntityBaseOptions.cs +++ b/src/ReC.Infrastructure/Options/Shared/EntityBaseOptions.cs @@ -3,4 +3,12 @@ public record EntityBaseOptions() { public Dictionary Columns { get; init; } = []; + + public void EnsureProperties(IEnumerable propertyNames) + { + var missingProperties = propertyNames.Except(Columns.Select(col => col.Key)).ToList(); + + if (missingProperties.Count != 0) + throw new InvalidOperationException($"The following properties are not configured: {string.Join(", ", missingProperties)}"); + } } \ No newline at end of file