Implementation details for the EF Core dotnet-ef CLI and tooling. Use when changing dotnet-ef commands, the ef wrapper, EFCore.Tools (PMC), or EFCore.Tasks MSBuild integration.
69
87%
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
The dotnet ef CLI and Visual Studio Package Manager Console commands for migrations, scaffolding, and compiled models.
src/dotnet-ef/)RootCommand parses global options. Subcommands implemented in src/ef/Commands/. Each invokes MSBuild to build, then shells out via dotnet exec ef.dll, which hosts OperationExecutor.
src/EFCore.Tools/)PowerShell module: Add-Migration, Update-Database, Scaffold-DbContext, Optimize-DbContext, etc.
src/EFCore.Tasks/)NuGet package Microsoft.EntityFrameworkCore.Tasks provides build/publish-time compiled model and precompiled query generation. Targets in buildTransitive/Microsoft.EntityFrameworkCore.Tasks.targets.
Trace an option to the code that consumes it before changing command or operation contracts. The outer dotnet-ef launcher builds the project and forwards remaining command-line arguments to ef.dll; the inner command under src/ef/Commands/ parses command-specific options.
MigrationsAddCommand.Execute() should guard its Reporter.WriteInformation() call and must not change IOperationExecutor.AddMigration().OperationExecutorBase only when the design-time operation in Microsoft.EntityFrameworkCore.Design needs it.EFCore.Tasks as separate entry points. Change them only when the requested behavior applies to those surfaces too.test/dotnet-ef.Tests/, test/ef.Tests/dotnet build / dotnet publish with EFOptimizeContext=true to verifydotnet ef migrations script output matches expected DDLdotnet/efcore
c0f183b
Also appears in
since Jul 28, 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.