Skip to content

Pre-convention model configuration #12229

Closed

Description

Doing an initial discovery of the model based only on DbSet roots was a reasonable approach when it was reasonably easy to distinguish likely scalar properties from likely navigation properties. However, as we allow more an more types to be mapped it has become increasingly problematic to

  • Exclude a type as an entity type and therefore avoid trying to bring it and all its properties into the model
  • Revert a type from being an entity type when a value converter is found or the type is ignored.

This results in both bugs and additional overhead.

Therefore, this issue is about finding ways to enhance model building so that it can more efficiently figure out what is an entity type and what is not. Some ideas:

  • Some up-front configuration that defines either types that are entity types, or types that are not entity types. This would be provided before model building begins, possibly using model customization or lifecycle hooks.
  • Up-front configuration for value converters, which would provide partial info on types that are not entity types.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions