ef-core

github/awesome-copilot · updated Apr 8, 2026

$npx skills add https://github.com/github/awesome-copilot --skill ef-core
0 commentsdiscussion
summary

Entity Framework Core best practices guide covering design, performance, security, and testing patterns.

  • Covers eight core areas: DbContext design, entity modeling, performance optimization, migrations, querying strategies, change tracking, security, and testing approaches
  • Emphasizes practical patterns like DbContextFactory, IEntityTypeConfiguration separation, AsNoTracking() for read-only queries, and compiled queries for frequently executed operations
  • Includes migration best practi
skill.md

Entity Framework Core Best Practices

Your goal is to help me follow best practices when working with Entity Framework Core.

Data Context Design

  • Keep DbContext classes focused and cohesive
  • Use constructor injection for configuration options
  • Override OnModelCreating for fluent API configuration
  • Separate entity configurations using IEntityTypeConfiguration
  • Consider using DbContextFactory pattern for console apps or tests

Entity Design

  • Use meaningful primary keys (consider natural vs surrogate keys)
  • Implement proper relationships (one-to-one, one-to-many, many-to-many)
  • Use data annotations or fluent API for constraints and validations
  • Implement appropriate navigational properties
  • Consider using owned entity types for value objects

Performance

  • Use AsNoTracking() for read-only queries
  • Implement pagination for large result sets with Skip() and Take()
  • Use Include() to eager load related entities when needed
  • Consider projection (Select) to retrieve only required fields
  • Use compiled queries for frequently executed queries
  • Avoid N+1 query problems by properly including related data

Migrations

  • Create small, focused migrations
  • Name migrations descriptively
  • Verify migration SQL scripts before applying to production
  • Consider using migration bundles for deployment
  • Add data seeding through migrations when appropriate

Querying

  • Use IQueryable judiciously and understand when queries execute
  • Prefer strongly-typed LINQ queries over raw SQL
  • Use appropriate query operators (Where, OrderBy, GroupBy)
  • Consider database functions for complex operations
  • Implement specifications pattern for reusable queries

Change Tracking & Saving

  • Use appropriate change tracking strategies
  • Batch your SaveChanges() calls
  • Implement concurrency control for multi-user scenarios
  • Consider using transactions for multiple operations
  • Use appropriate DbContext lifetimes (scoped for web apps)

Security

  • Avoid SQL injection by using parameterized queries
  • Implement appropriate data access permissions
  • Be careful with raw SQL queries
  • Consider data encryption for sensitive information
  • Use migrations to manage database user permissions

Testing

  • Use in-memory database provider for unit tests
  • Create separate testing contexts with SQLite for integration tests
  • Mock DbContext and DbSet for pure unit tests
  • Test migrations in isolated environments
  • Consider snapshot testing for model changes

When reviewing my EF Core code, identify issues and suggest improvements that follow these best practices.

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.855 reviews
  • Shikha Mishra· Dec 28, 2024

    ef-core has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Hana Reddy· Dec 20, 2024

    We added ef-core from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.

  • Ama Gupta· Dec 20, 2024

    Registry listing for ef-core matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Naina Patel· Dec 16, 2024

    ef-core fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Ganesh Mohane· Dec 4, 2024

    ef-core is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.

  • Charlotte Liu· Dec 4, 2024

    Solid pick for teams standardizing on skills: ef-core is focused, and the summary matches what you get after install.

  • Charlotte White· Nov 23, 2024

    ef-core has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Yash Thakker· Nov 19, 2024

    Solid pick for teams standardizing on skills: ef-core is focused, and the summary matches what you get after install.

  • Sakura Ramirez· Nov 11, 2024

    Useful defaults in ef-core — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Kwame Ndlovu· Nov 11, 2024

    ef-core reduced setup friction for our internal harness; good balance of opinion and flexibility.

showing 1-10 of 55

1 / 6