Implementation details for EF Core scaffolding (reverse engineering). Use when changing ef dbcontext scaffold pipeline implementation, database schema reading, CSharpModelGenerator, or related classes.
62
78%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./.agents/skills/scaffolding/SKILL.mdGenerates C# code from database schemas (reverse engineering).
dotnet ef dbcontext optimize)Pipeline: IDatabaseModelFactory (reads schema) → IScaffoldingModelFactory (builds EF model) → IModelCodeGenerator (generates C#)
IReverseEngineerScaffolder — orchestrates full pipelineProvider schema readers often query one-to-many metadata tables. Preserve anti-semi semantics when adapting SQL for a limited engine: a LEFT JOIN containing the complete excluded-property predicate in ON, followed by a null filter on a non-nullable joined key, is equivalent to NOT EXISTS. Unrelated metadata rows do not join; any matching excluded row makes the joined key non-null and excludes the object. Do not move parts of the excluded-property predicate to WHERE or join all metadata rows and filter individual rows afterward. An equivalent non-correlated anti-set form, such as NOT IN (SELECT key ... WHERE excluded-condition), also works when the subquery cannot return null keys. Cover objects with no metadata, unrelated metadata only, the excluded property only, and both excluded and unrelated properties.
dotnet/efcore
c0f183b
Also appears in
last in sync Sep 4, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.