diff --git a/src/SharedKernel.Postgres/Extensions/ModelConfigurationBuilderExtensions.cs b/src/SharedKernel.Postgres/Extensions/ModelConfigurationBuilderExtensions.cs index 2fd3b59..dfb7fb4 100644 --- a/src/SharedKernel.Postgres/Extensions/ModelConfigurationBuilderExtensions.cs +++ b/src/SharedKernel.Postgres/Extensions/ModelConfigurationBuilderExtensions.cs @@ -2,7 +2,7 @@ namespace SharedKernel.Postgres.Extensions; -public static class ModelConfigurationBuilderExtensions +public static class DbContextExtensions { public static ModelConfigurationBuilder ConfigureDecimalType( this ModelConfigurationBuilder modelConfigurationBuilder) @@ -11,4 +11,17 @@ public static ModelConfigurationBuilder ConfigureDecimalType( return modelConfigurationBuilder; } + + public static ModelBuilder RestrictFkDeleteBehaviorByDefault(this ModelBuilder modelBuilder) + { + foreach (var entityType in modelBuilder.Model.GetEntityTypes()) + { + foreach (var foreignKey in entityType.GetForeignKeys()) + { + foreignKey.DeleteBehavior = DeleteBehavior.Restrict; + } + } + + return modelBuilder; + } } \ No newline at end of file diff --git a/src/SharedKernel.Postgres/SharedKernel.Postgres.csproj b/src/SharedKernel.Postgres/SharedKernel.Postgres.csproj index c335346..35ca4da 100644 --- a/src/SharedKernel.Postgres/SharedKernel.Postgres.csproj +++ b/src/SharedKernel.Postgres/SharedKernel.Postgres.csproj @@ -8,13 +8,13 @@ Readme.md Pandatech MIT - 1.0.22 + 1.0.23 Pandatech.SharedKernel.Postgres Pandatech.SharedKernel.Postgres Pandatech; PostgreSQL; Entity Framework Core; EF Core; Health Checks; Exception Handling; Database Migration; .NET; ASP.NET Core; Shared Kernel Pandatech.SharedKernel.Postgres simplifies PostgreSQL integration in ASP.NET Core applications by providing utilities for Entity Framework Core setup, health checks, and other enhancements. https://github.com/PandaTechAM/be-lib-sharedkernel-postgres - Nuget updates + Default delete restriction method added