# Entity Framework Core

Entity Framework Core: What is an ORM?, DbContext and Entities, Querying and Saving with EF Core, Dapper or EF Core?.

Updated: November 3, 2026

1. [What is an ORM?](https://www.ask-codey.com/lessons/entity-framework-core-what-is-an-orm) (Journeyman): An ORM (object-relational mapper) moves data between C# objects and database tables. Dapper is a micro-ORM, where you write the SQL and it fills the objects. Entity Framework Core is a full ORM, where you write LINQ and it writes the SQL, and also tracks and saves your changes.
2. [DbContext and Entities](https://www.ask-codey.com/lessons/entity-framework-core-dbcontext-and-entities) (Journeyman): EF Core maps entity classes to tables, matching names by convention. A DbContext class lists a DbSet for each table and holds the connection. In ASP.NET Core, register it with AddDbContext and UseSqlServer, and controllers ask for it like any other service.
3. [Querying and Saving with EF Core](https://www.ask-codey.com/lessons/entity-framework-core-querying-and-saving-with-ef-core) (Journeyman): Query a DbSet with LINQ, finished by an async method such as ToListAsync, and EF Core runs it as SQL. Add, change or remove entities, then call SaveChangesAsync, and EF Core writes the INSERT, UPDATE or DELETE for you.
4. [Dapper or EF Core?](https://www.ask-codey.com/lessons/entity-framework-core-dapper-or-ef-core) (Journeyman): Dapper gives full control of the SQL with very little to learn; EF Core writes the SQL, tracks changes and follows relationships. Choose Dapper when the SQL matters most and EF Core when the objects do, and keep to one per project unless there's a reason.

Source: https://www.ask-codey.com/courses/csharp-full-stack-bootcamp/topics/entity-framework-core
