This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Download Microsoft Edge More info about Internet Explorer and Microsoft Edge

These tools and extensions provide additional functionality for Entity Framework Core.

Important

Extensions are built by a variety of sources and aren't maintained as part of the Entity Framework Core project. When considering a third party extension, be sure to evaluate its quality, licensing, compatibility, support, etc. to ensure it meets your requirements. In particular, an extension built for an older version of EF Core may need updating before it will work with the latest versions.

Tools

LLBLGen Pro

LLBLGen Pro is an entity modeling solution with support for Entity Framework and Entity Framework Core. It lets you easily define your entity model and map it to your database, using database first or model first, so you can get started writing queries right away. For EF Core: 2, 3, 5, 6.

Website

Devart Entity Developer

Entity Developer is a powerful O/RM designer for ADO.NET Entity Framework, NHibernate, LinqConnect, Telerik Data Access, and LINQ to SQL. It supports designing EF Core models visually, using model first or database first approaches, and C# or Visual Basic code generation. For EF Core: 2, 3, 5, 6.

Website

nHydrate ORM for Entity Framework

An O/RM that creates strongly-typed, extendable classes for Entity Framework. The generated code is Entity Framework Core. There is no difference. This is not a replacement for EF or a custom O/RM. It is a visual, modeling layer that allows a team to manage complex database schemas. It works well with SCM software like Git, allowing multi-user access to your model with minimal conflicts. The installer tracks model changes and creates upgrade scripts. For EF Core: 3.

Github repository

EF Core Power Tools

EF Core Power Tools is a Visual Studio extension that exposes various EF Core design-time tasks in a simple user interface. It includes reverse engineering of DbContext and entity classes from existing databases and SQL Server DACPACs , management of database migrations, and model visualizations. For EF Core: 3, 6, 7.

GitHub wiki

Entity Framework Visual Editor

Entity Framework Visual Editor is a Visual Studio extension that adds an O/RM designer for visual design of EF 6, and EF Core classes. Code is generated using T4 templates so can be customized to suit any needs. It supports inheritance, unidirectional and bidirectional associations, enumerations, and the ability to color-code your classes and add text blocks to explain potentially arcane parts of your design. For EF Core: 2, 3, 5, 6, 7.

Marketplace

IWAPI

IWAPI (Instant Web API) is a scaffolding engine for .NET Core that can automate the generation of DbContext classes, entities, models and creates a working Web API from any SQL Server database.

Website

Extensions

Microsoft.EntityFrameworkCore.AutoHistory

A plugin library that enables automatically recording the data changes performed by EF Core into a history table. For EF Core: 2, 3, 5.

GitHub repository | NuGet

EFCoreSecondLevelCacheInterceptor

Second level caching is a query cache. The results of EF commands will be stored in the cache, so that the same EF commands will retrieve their data from the cache rather than executing them against the database again. For EF Core: 3, 5.

GitHub repository | NuGet

EntityFrameworkCore.Scaffolding.Handlebars

Allows customization of classes reverse engineered from an existing database using the Entity Framework Core tool chain with Handlebars templates. For EF Core: 2, 3, 5, 6.

GitHub repository | NuGet

NeinLinq.EntityFrameworkCore

NeinLinq extends LINQ providers such as Entity Framework to enable reusing functions, rewriting queries, and building dynamic queries using translatable predicates and selectors. For EF Core: 2, 3, 5, 6, 7.

GitHub repository | NuGet

Microsoft.EntityFrameworkCore.UnitOfWork

A plugin for Microsoft.EntityFrameworkCore to support repository, unit of work patterns, and multiple databases with distributed transaction supported. For EF Core: 2, 3.

GitHub repository

EFCore.BulkExtensions

EF Core extensions for Bulk operations (Insert, Update, Delete). For EF Core: 2, 3, 5, 6.

GitHub repository | NuGet

Bricelam.EntityFrameworkCore.Pluralizer

Adds design-time pluralization. For EF Core: 2, 3, 5, 6, 7.

GitHub repository | NuGet

Toolbelt.EntityFrameworkCore.IndexAttribute

Revival of [Index] attribute (with extension for model building). For EF Core: 2, 3, 5.

GitHub repository | NuGet

Verify.EntityFramework

Extends Verify to allow snapshot testing with Entity Framework. For EF Core: 3, 5, 6, 7.

GitHub repository | NuGet

LocalDb

Provides a wrapper around SQL Server Express LocalDB to simplify running tests against Entity Framework. For EF Core: 3, 5, 6, 7.

GitHub repository | NuGet

EfCoreTemporalTable

SQL Server temporal tables are supported directly within EF Core as of EF Core 6 .

Easily perform temporal queries on your favorite database using introduced extension methods: AsTemporalAll() , AsTemporalAsOf(date) , AsTemporalFrom(startDate, endDate) , AsTemporalBetween(startDate, endDate) , AsTemporalContained(startDate, endDate) . For EF Core: 3, 5.

GitHub repository | NuGet

EntityFrameworkCore.TemporalTables

SQL Server temporal tables are supported directly within EF Core as of EF Core 6 .

Extension library for Entity Framework Core which allows developers who use SQL Server to easily use temporal tables. For EF Core: 2, 3, 5.

GitHub repository | NuGet

EntityFrameworkCore.NCache

NCache Entity Framework Core Provider is a distributed second level cache provider for caching query results. The distributed architecture of NCache makes it more scalable and highly available. For EF Core: 2, 3.

Website | NuGet

EntityFrameworkCore.Projectables

Flexible projection magic for EF Core. Use properties, methods, and extension methods in your query without client evaluation. For EF Core: 3, 5, 6.

GitHub repository | NuGet

EntityFrameworkCore.Triggered

Triggers for EF Core. Respond to changes in your DbContext before and after they are committed to the database. Triggers are fully asynchronous and support dependency injection, inheritance, cascading and more. For EF Core: 3, 5, 6.

GitHub repository | NuGet

Entity Framework Plus

Extends your DbContext with features such as: Include Filter, Auditing, Caching, Query Future, Batch Delete, Batch Update, and more. For EF Core: 2, 3, 5, 6, 7.

Website | GitHub repository | NuGet

Entity Framework Extensions

Extends your DbContext with high-performance bulk operations: BulkSaveChanges, BulkInsert, BulkUpdate, BulkDelete, BulkMerge, and more. For EF Core: 2, 3, 5, 6, 7.

Website | NuGet

Expressionify

Add support for calling extension methods in LINQ lambdas. For EF Core: 3, 5, 6.

GitHub repository | NuGet

EntityLinq

Alternative (not MS based) Language Integrated Query (LINQ) technology for relational databases. It allows you to use C# to write strongly typed SQL queries. For EF Core: 3, 5, 6.

  • Full C# support for query creation: multiple statements inside lambda, variables, functions, etc.
  • No semantic gap with SQL. EntityLinq declares SQL statements (like SELECT , FROM , WHERE ) as first class C# methods, combining familiar syntax with intellisense, type safety and refactoring.
  • As a result SQL becomes just "another" class library exposing its API locally, literally "Language Integrated SQL" .

    Website | NuGet

    Ramses

    Life cycle hooks (for SaveChanges). For EF Core: 2, 3.

    GitHub repository | NuGet

    EFCore.NamingConventions

    This will automatically make all your table and column names have snake_case, all UPPER or all lower case naming. For EF Core: 3, 5, 6, 7.

    GitHub repository | NuGet

    EFCore.CheckConstraints

    This plugin allows you to opt into some check constraints - just activate it and they'll automatically get created for you. For EF Core: 5, 6, 7.

    GitHub repository | NuGet

    SimplerSoftware.EntityFrameworkCore.SqlServer.NodaTime

    Adds native support to EntityFrameworkCore for SQL Server for the NodaTime types. For EF Core: 3, 5, 6, 7.

    GitHub repository | NuGet

    Dabble.EntityFrameworkCore.Temporal.Query

    SQL Server temporal tables are supported directly within EF Core as of EF Core 6 .

    LINQ extensions to Entity Framework Core 3.1 to support Microsoft SQL Server Temporal Table Querying. For EF Core: 3.

    GitHub repository | NuGet

    EntityFrameworkCore.SqlServer.HierarchyId

    Adds hierarchyid support to the SQL Server EF Core provider. For EF Core: 3, 5, 6, 7.

    GitHub repository | NuGet

    linq2db.EntityFrameworkCore

    Alternative translator of LINQ queries to SQL expressions. For EF Core: 2, 3, 5, 6, 7.

    Includes support for advanced SQL features such as CTEs, bulk copy, table hints, windowed functions, temporary tables, and database-side create/update/delete operations.

    GitHub repository | NuGet

    EFCore.SoftDelete

    An implementation for soft deleting entities. For EF Core: 3, 5, 6.

    GitHub repository | NuGet

    EntityFrameworkCore.ConfigurationManager

    Extends EF Core to resolve connection strings from App.config. For EF Core: 3, 5, 6, 7.

    GitHub repository | NuGet

    Detached Mapper

    A DTO-Entity mapper with composition/aggregation handling (similar to GraphDiff). For EF Core: 3, 5, 6.

    GitHub repository | NuGet

    EntityFrameworkCore.Sqlite.NodaTime

    Adds support for NodaTime types when using SQLite . For EF Core: 5, 6, 7.

    GitHub repository | NuGet

    ErikEJ.EntityFrameworkCore.SqlServer.Dacpac

    Enables reverse engineering an EF Core model from a SQL Server data-tier application package (.dacpac). For EF Core: 3, 6, 7.

    GitHub repository | NuGet

    ErikEJ.EntityFrameworkCore.DgmlBuilder

    Generate DGML (Graph) content that visualizes your DbContext. Adds the AsDgml() extension method to the DbContext class. For EF Core: 3, 6, 7.

    GitHub repository | NuGet

    ErikEJ.EntityFrameworkCore.SqlServer.SqlQuery

    Provides the SqlQueryAsync<T> and SqlQueryValueAsync<T> methods to help you populate arbitrary classes or a list of primitive types from a raw SQL query. For EF Core: 6, 7.

    GitHub repository | NuGet

    ErikEJ.EntityFrameworkCore.SqlServer.DateOnlyTimeOnly

    Use the DateOnly and TimeOnly .NET types with the EF Core SQL Server provider. For EF Core: 6, 7.

    GitHub repository | NuGet

    EntityFramework.Exceptions

    When using Entity Framework Core all database exceptions are wrapped in DbUpdateException. EntityFramework.Exceptions handles all the database-specific details to find which constraint was violated and allows you to use typed exceptions such as UniqueConstraintException , CannotInsertNullException , MaxLengthExceededException , NumericOverflowException , ReferenceConstraintException when your query violates database constraints.

    Supports SQL Server, Postgres, MySql, SQLite and Oracle. For EF Core: 3, 5, 6.

    GitHub Repository

    EntityFrameworkCore.FSharp

    Adds F# design-time support to EF Core. For EF Core: 5, 6.

    GitHub repository | NuGet

    EntityFrameworkCore.VisualBasic

    Adds VB design-time support to EF Core. For EF Core: 5, 6, 7.

    GitHub repository | NuGet

    Krzysztofz01.EFCore.QueryFilterBuilder

    Extension for Entity Framework that allows you to create and manage multiple query filters. For EF Core: 5, 6.

    GitHub repository

    Pagination.EntityFrameworkCore.Extensions

    This is a library for Pagination on EntityFrameworkCore. Works well with Entity Framework Core as an extension, and supports both asynchronous and synchronous. It also has many useful features commonly used especially on web development. For EF Core: 2, 3, 5.

    GitHub repository | NuGet

    Laraue.EfCoreTriggers

    Fluent API to declare triggers in Context.OnModelCreating which are later built into migrations. Providers to Postgres, MySQL, SQL Server and SQLite. For EF Core: 5, 6.

    GitHub repository | NuGet

    EntityCloner.Microsoft.EntityFrameworkCore

    Cloning entities using EF Core configuration. You can use the Include method to specify related data to be cloned. For EF Core: 5, 6, 7.

    GitHub repository | NuGet

    Zomp EF Core Extensions

    Provides window (analytics) functions and binary functions for EF Core. Providers: SQL Server, SQLite, PostgreSQL. For EF Core: 6, 7.

    GitHub repository | NuGet

    Ainoraz.EFCore.IncludeBuilder

    Extension for EF Core that provides alternative Include syntax in order to better support the following scenarios:

  • Loading multiple entities on the same level (siblings).
  • Writing extension methods that are independent of nesting level.
  • For EF Core: 6, 7.

    GitHub repository | NuGet

    Entity Framework Ruler

    Adds design-time customization of the reverse engineered model including:

  • Class, property and navigation naming
  • Skipping the scaffolding of any schema, table, or column.
  • Overriding property types, especially for enums.
  • EF6 EDMX support, providing a smooth 3-step upgrade path from EF6 to EF Core.
  • For EF Core: 6, 7.

    GitHub repository | CLI Tool NuGet | Design NuGet

    LessCode.EFCore.StronglyTypedId

    A source generator that can generate strongly-typed-id classes automatically for entities. For EF Core: 7.

    GitHub repository

    Microsoft.EntityFrameworkCore.DynamicLinq

    The Dynamic LINQ library let you execute query with dynamic string and provide some utilities methods such as ParseLambda, Parse, and CreateClass. For EF Core: 2, 3, 5, 6, 7.

    Website | GitHub repository | NuGet

    API Integrations

    These packages are designed to integrate directly with EF Core to expose various APIs.

    HotChocolate

    Build your own GraphQL endpoint on top of any resource.

    GitHub repository | NuGet

    GraphQL.EntityFramework

    Add Entity Framework IQueryable support to GraphQL.

    GitHub repository | NuGet

    EntityGraphQL

    GraphQL server with tight EntityFramework integration. For EF Core: 5, 6, 7.

    GitHub repository | NuGet

    OData

    A standard for implementing REST APIs with specifications for discovery, filtering, sorting, projections, navigations, bulk operations, and more.

    GitHub repository | NuGet