Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

multiple assembly "conventions" (EF vs AO) #29

Open
adamfoneil opened this issue Aug 11, 2022 · 1 comment
Open

multiple assembly "conventions" (EF vs AO) #29

adamfoneil opened this issue Aug 11, 2022 · 1 comment
Assignees

Comments

@adamfoneil
Copy link
Owner

adamfoneil commented Aug 11, 2022

Developers have conflicting and strongly held beliefs about C#-to-SQL conventions -- for example what the [Key] and [ForeignKey] attributes represent exactly, and so on. Not to mention special attributes like my own [References] attribute in AO.Models. In ModelSync, the [Key] attribute is handled in a very specific way, resolving to one of several key configurations (primary, unique constraint, identity). Some devs want Guid keys, for example, some want int or long or string. Some devs want implicitly pluralized table names. (I don't.) The point is, it's very difficult to get agreement on universal database conventions.

The goal for this issue is to create an IAssemblySource that works with assemblies intended for Entity Framework EFModelBuilder

This will sit alongside the AOModelBuilder.

The EF version should accomplish much the same thing as the AO version, but should not reference AO.Models.

@adamfoneil adamfoneil changed the title abstract conventions multiple assembly "conventions" (EF vs AO) Sep 3, 2022
@adamfoneil
Copy link
Owner Author

@desirablecoder this is a bit different from what we talked about earlier, but this is really where I was trying to get to. After some thought, I don't like my idea of an abstract DbConventions class. There's already an interface that will work here IAssemblySource. There's no need to make a new abstract class IMO.

desirablecoder added a commit that referenced this issue Sep 16, 2022
Repository owner deleted a comment Aug 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants