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

[Feature] Add option to add attributes on navigation properties for the entity #547

Open
ArnaudB88 opened this issue Mar 22, 2024 · 0 comments

Comments

@ArnaudB88
Copy link

In our company, we use your generator for many years now with many developers. Over the years, we added some features so it works better with our solutions. As a sign of appreciation, I want to suggest some features because I think it will help some other developers as well.

Feature description:

Add an option to add attributes on navigation properties in the generated entity classes.

Feature motivation & example usage:

We use it to add the 'Ignore' attribute from Automapper on all navigation properties. In combination with an automapper config, we exclude mappings for all destinationmember properties which have that attribute. This allows mapping dto classes to entities without mapping the navigation properties. We want to map them explicitly in code, since we work with soft deletes.

This is only one example, but I can immagine other examples. The alternative to this feature would be a manual addition, but that is a lot of work and a regeneration would rollback all additions.
The option is a ; separated string, so multiple attributes can be added.

YAML usage:

data:
  entity:
    relationshipAttributes: 'Ignore'

Code generation result:

public partial class Project
{
    #region Generated Relationships
    [Ignore]
    public virtual ICollection<Item> Items { get; set; }
    #endregion
}

Please review the feature request and evaluate if you think this is an addition to your repo.
(pull request will be added)

Thanks

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

1 participant