On this page
Overview
Entity Framework Core is an object-database mapper for .NET. It combines LINQ queries, change tracking, inserts and updates, and schema migrations under one programming model while supporting SQL Server, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through providers.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Express database queries through LINQ
Applications query DbContext and DbSet with LINQ while the configured provider translates operations for the target database.
Sources: [1]
Persist inserts, updates, and deletes through change tracking
EF Core tracks entity state and applies changes through SaveChanges, providing an object-oriented data-access model.
Sources: [1]
Manage schema migrations and select provider plugins
Schema migrations are part of the framework, while SQL Server, SQLite, Cosmos DB, and other databases are enabled by installing the corresponding provider package.
Sources: [1]
Best fit
Fits .NET applications centralizing data access around DbContext
It is useful when applications want queries, state tracking, updates, and migrations managed through one .NET data-access toolchain.
Sources: [1]
Before adoption
Install and validate the provider for the target database
The README directs users to provider packages for the intended database. Check provider compatibility with the EF Core version and account for database-specific behavior.
Sources: [1]
Do not treat the InMemory provider as a production-database substitute
The official InMemory package documentation discourages its common use for testing. It is useful for a minimal API exercise, but provider-specific queries, transactions, and constraints should be tested against the actual database engine.
Sources: [2]
Official sources
- [1]EF Core 10.0.12 README(2026-10-04)
- [2]EF Core 10.0.12 InMemory package guidance(2026-10-04)
- [3]EF Core 10.0.12 release(2026-10-04)
- [4]EF Core MIT license(2026-10-04)
Supplemental curator note
Choose a provider package for the target database rather than installing only the EF Core base package. Verify provider compatibility with the EF Core major version and test migrations and translated queries against the real production database engine before rollout.
Try it in 3 steps
- 1
Add EF Core InMemory 10.0.12 to a console project
Pin stable 10.0.12 and use the in-memory provider for an API-only exercise without an external database.
dotnet new console -n EfCoreDemo -f net10.0 && dotnet add EfCoreDemo/EfCoreDemo.csproj package Microsoft.EntityFrameworkCore.InMemory --version 10.0.12 - 2
Create a minimal DbContext and model in Program.cs
Exercise DbContext, DbSet, insert, SaveChanges, and a LINQ Count query in one file.
printf 'using Microsoft.EntityFrameworkCore;\nusing var db = new DemoDb(); db.Items.Add(new Item { Name = "OSS Tanbou" }); db.SaveChanges(); Console.WriteLine(db.Items.Count());\npublic class DemoDb : DbContext { public DbSet<Item> Items => Set<Item>(); protected override void OnConfiguring(DbContextOptionsBuilder o) => o.UseInMemoryDatabase("demo"); }\npublic class Item { public int Id { get; set; } public string Name { get; set; } = ""; }\n' > EfCoreDemo/Program.cs - 3
Run the sample and confirm one stored row
Confirm output
1. This is an API exercise only; the project documentation discourages treating the InMemory provider as a production-database substitute for testing.dotnet run --project EfCoreDemo/EfCoreDemo.csproj
Growth
Growth trends · Last 30 days
14,797 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 202
- Open PRs
- 37
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- entity-framework
- database
- c-sharp
- dotnet-core
- dotnet-standard
- dotnet-framework
- orm
- aspnet-product
- hacktoberfest
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Avalonia31,619 Stars
1 shared tag(s) · 2 shared category(s) · Same language
build cross-platform C# and XAML interfaces for desktop, mobile, and WebAssembly from one .NET UI framework
C# - .NET Community Toolkit3,762 Stars
1 shared tag(s) · 2 shared category(s) · Same language
add MVVM, argument-validation, and high-performance memory helpers to .NET applications as UI-framework-agnostic NuGet packages
C# - Flutter179,266 Stars
1 shared tag(s) · 2 shared category(s)
build mobile, web, and desktop UI from one Dart codebase
Dart - React Native126,786 Stars
1 shared tag(s) · 2 shared category(s)
native mobile UI with React, stable 0.87.1, and a framework-first path
C++ - Electron123,357 Stars
1 shared tag(s) · 2 shared category(s)
bundle Chromium and Node.js to build desktop applications for three major operating systems with HTML, CSS, and JavaScript
C++ - Tauri111,560 Stars
1 shared tag(s) · 2 shared category(s)
Combine a web frontend and Rust native layer into desktop and mobile apps using system WebViews
Rust
Report incorrect information
Tell us if any listing information is incorrect or outdated.