Allow to define custom conventional entity configurers for EF Core #23558
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Allow developers to add their custom conventional mapping logic or customize existing logic when they call the
ConfigureByConventionmethod.Example:
When we configure our entity like that, the
b.ConfigureByConvention()method configures ABP's base properties, likeSoftDelete,CreationTime,TenantId, ...See the AbpEntityTypeBuilderExtensions class for all.
To add your own convention, add a new item to the static
AbpEntityTypeBuilderExtensions.ConventionalConfigurerslist. Example:This example checks if the entity implements
IHasEmailAddress(which defines theEmailAddressproperty), then it sets max length for that property.You should write this configuration before you first use the
DbContextobject, typically in thePreConfigureServicesmethod of your module class, or in theProgram.cs, before you initialize your application.You can also remove or replace ABP's default configurers using the
AbpEntityTypeBuilderExtensions.ConventionalConfigurerslist.