Freigeben über


EF Core Tools und -Erweiterungen

Diese Tools und Erweiterungen stellen zusätzliche Funktionen für Entity Framework Core bereit.

Wichtig

Erweiterungen werden durch eine Vielzahl von Quellen erstellt und nicht als Teil des Entity Framework Core-Projekts verwaltet. Wenn Sie die Erweiterung eines Drittanbieters in Betracht ziehen, sollten Sie Qualität, Lizenzierung, Kompatibilität, Support usw. auswerten, um sicherzustellen, dass diese Ihren Anforderungen entspricht. Bei Erweiterungen, die für eine ältere EF Core-Version erstellt wurden, ist insbesondere darauf zu achten, dass sie möglicherweise aktualisiert werden müssen, bevor sie mit den neuesten Versionen kompatibel sind.

Werkzeuge

EF Core Power Tools

EF Core Power Tools ist eine Visual Studio-Erweiterung, die verschiedene EF Core-Aufgaben zur Entwurfszeit in einer einfachen Benutzeroberfläche anbietet. Dadurch wird Reverse Engineering (Zurückentwicklung) von DbContext- und Entitätsklassen aus vorhandenen Datenbanken und SQL Server-DACPACs sowie Modellvisualisierungen und -diagramme ermöglicht. Für EF Core: 8-10.

GitHub-Wiki

EF Core Power Tools CLI

EF Core Power Tools CLI ist ein globales Befehlszeilentool für .NET. Es ermöglicht das erweiterte Reverse Engineering von DbContext- und Entitätsklassen aus vorhandenen Datenbanken und SQL Server DACPACs. Für EF Core: 8-10.

NuGet

LLBLGen Pro

LLBLGen Pro ist eine Entitätsmodelllösung, die Entity Framework und Entity Framework Core unterstützt. Sie können problemlos ihr Entitätsmodell definieren und es Ihrer Datenbank zuordnen, indem Sie Database First oder Model First verwenden, sodass Sie sofort mit dem Schreiben von Abfragen beginnen können. Für EF Core: 2-9.

Website

Devart Entity-Entwickler

Entity Developer ist ein leistungsstarker O/RM-Designer für ADO.NET Entity Framework, NHibernate, LinqConnect, Telerik Data Access und LINQ to SQL. Sie können damit EF Core-Modelle mithilfe von Model First oder Database First visuell entwerfen sowie C#- oder Visual Basic-Code generieren. Für EF Core: 2-9.

Website

DevMagic EF Core Sidekick

EF Core Sidekick ist eine Visual Studio-Erweiterung, die die Leistungsfähigkeit der automatischen Codegenerierung in Visual Studio verbessert. Sie stellt eine Reihe von Tools und Vorlagen zum Generieren von EF Core-Entitäten und abgeleitetem DbContext aus einer vorhandenen Datenbank bereit und generiert dann Dienste und REST-APIs aus den Entitäten. Für EF Core: 6–9.

Visual Studio Marketplace | Website

Visueller Editor für Entity Framework

Entity Framework Visual Editor ist eine Erweiterung von Visual Studio, mit der ein O/RM-Designer für visuelle Entwürfe von EF 6- und EF Core-Klassen hinzugefügt werden kann. Code wird mithilfe von T4-Vorlagen generiert und kann somit vollständig an die Anforderungen des Benutzers angepasst werden. Es unterstützt Vererbung, unidirektionale und bidirektionale Assoziationen, Aufzählungen sowie die Möglichkeit, Ihre Klassen farbcodieren und Textblöcke hinzufügen, um potenziell schwer verständliche Teile Ihres Designs zu erklären. Für EF Core 2-8.

Visual Studio Marketplace

efmig

efmig ist eine plattformübergreifende GUI-Anwendung, welche die tägliche Entwicklung bei der Arbeit mit Entity Framework Core beschleunigt. Es behandelt die gängigsten Anwendungsfälle wie Migrationscode und Skripterstellung mit einer einfachen Schnittstelle, die mit einem Mausklick bedient werden kann. Für EF Core 2-8.

GitHub-Repository

EFCore.Visualizer

Mit der Debuggerschnellansicht des Entity Framework Core-Abfrageplans können Sie den Abfrageplan Ihrer Abfragen direkt in Visual Studio anzeigen. Derzeit unterstützt der Visualizer SQL Server und PostgreSQL. Für EF Core 7-8.

Visual Studio Marketplace

Erweiterungen

EFCoreSecondLevelCacheInterceptor

Das Zwischenspeichern zweiter Ebene ist ein Abfragecache. Die Ergebnisse von EF-Befehlen werden im Cache gespeichert, sodass die gleichen EF-Befehle ihre Daten eher aus dem Cache abrufen, als die Datenbank erneut zu durchsuchen. Für EF Core 3-8.

GitHub-Repository | NuGet

EntityFrameworkCore.Scaffolding.Handlebars

Mit dieser Erweiterung können Klassen angepasst werden, die per Reverse Engineering mithilfe der Entity Framework Core-Toolkette mit Handlebars-Vorlagen aus einer vorhandenen Datenbank erstellt wurden. Für EF Core 2-8.

GitHub-Repository | NuGet

NeinLinq.EntityFrameworkCore

NeinLinq ist eine Erweiterung für LINQ-Anbieter wie Entity Framework, um Funktionen wiederverwenden zu können, Abfragen erneut schreiben zu können und dynamische Abfragen mithilfe von übersetzbaren Prädikaten und Selektoren erstellen zu können. Für EF Core 3-8.

GitHub-Repository | NuGet

EFCore.BulkExtensions

EF Core-Erweiterungen für Massenvorgänge (Einfügen, Aktualisieren, Löschen) Für EF Core 2-8.

GitHub-Repository | NuGet

Bricelam.EntityFrameworkCore.Pluralizer

Diese Erweiterung fügt die Pluralisierung zur Entwurfszeit hinzu. Für EF Core: 2-9.

GitHub-Repository | NuGet

Verify.EntityFramework

Erweitert das Überprüfen, um Momentaufnahmentests mit Entity Framework zuzulassen. Für EF Core 3-8.

GitHub-Repository | NuGet

LocalDb

Stellt einen Wrapper für SQL Server Express LocalDB bereit, um das Ausführen von Tests von Entity Framework zu vereinfachen.

GitHub-Repository | NuGet

EfCore.InMemory.Transactions

Nahtlose Transaktionsunterstützung für EF Core InMemory-Anbieter. Beseitigt Fehler "Transaktionen mit Isolationsstufe werden nicht unterstützt" in Tests, ohne den Produktionscode zu ändern. Stellt sichere Erweiterungsmethoden und NoOpDbContextTransaction für UnitOfWork-Muster bereit. Für EF Core: 8-10.

GitHub-Repository | NuGet

EntityFrameworkCore.Projectables

Flexible Projektionsmagie für EF Core. Verwenden Sie Eigenschaften, Methoden und Erweiterungsmethoden in Ihrer Abfrage ohne Clientauswertung. Für EF Core 3-6, 8.

GitHub-Repository | NuGet

Entity Framework Plus

Erweitert Ihren DbContext mit Features wie den folgenden: Include Filter, Auditing, Caching, Query Future, Batch Delete, Batch Update und vielen weiteren. Für EF Core: 2-10.

Website | GitHub-Repository | NuGet

Entity Framework-Erweiterungen

Erweitert Ihren DbContext mit hochleistungsfähigen Massenvorgängen: BulkSaveChanges, BulkInsert, BulkUpdate, BulkDelete, BulkMerge und vielen weiteren. Für EF Core: 2-10.

Website | Nuget

Expressionify

Fügt Unterstützung für das Aufrufen von Erweiterungsmethoden in LINQ-Lambdas hinzu. Für EF Core: 3-9.

GitHub-Repository | NuGet

EntityLinq

Alternative (nicht MS-basierte) LINQ-Technologie (Language Integrated Query) für relationale Datenbanken. Es ermöglicht Ihnen, C# zu verwenden, um stark typisierte SQL-Abfragen zu schreiben. Für EF Core 3-8.

  • Volle Unterstützung von C# für das Erstellen von Abfragen: mehrere Anweisungen innerhalb von Lambdaausdrücken, Variablen, Funktionen usw.
  • Keine semantische Lücke zu SQL. EntityLinq deklariert SQL-Anweisungen (wie SELECT, FROM, WHERE) als erstklassige C#-Methoden, wobei die vertraute Syntax mit IntelliSense, Typsicherheit und Refactoring kombiniert wird.

Infolgedessen wird SQL einfach zu einer „weiteren“ Klassenbibliothek, die ihre API lokal verfügbar macht, wörtlich Sprachintegrierte SQL.

Website | Nuget

EFCore.NamingConventions

Hiermit werden automatisch alle Tabellen- und Spaltennamen auf snake_case, alles in Großbuchstaben oder alles in Kleinbuchstaben gesetzt. Für EF Core: 3-9.

GitHub-Repository | NuGet

EFCore.CheckConstraints

Mit diesem Plug-In können Sie sich für einige CHECK-Einschränkungen entscheiden. Aktivieren Sie es einfach, und die Einschränkungen werden automatisch für Sie erstellt. Für EF Core: 5-9.

GitHub-Repository | NuGet

SimplerSoftware.EntityFrameworkCore.SqlServer.NodaTime

Fügt EntityFrameworkCore für SQL Server native Unterstützung für die NodaTime-Typen hinzu. Für EF Core: 3-9.

GitHub-Repository | NuGet

linq2db.EntityFrameworkCore

Alternativer Übersetzer von LINQ-Abfragen an SQL-Ausdrücke Für EF Core 2-8.

Bietet Unterstützung für erweiterte SQL-Features wie CTEs, Massenkopiervorgänge, Tabellenhinweise, Fensterfunktionen, temporäre Tabellen und Erstell-, Update, und Löschvorgänge auf Datenbankseite

GitHub-Repository | NuGet

EntityFrameworkCore.ConfigurationManager

Erweitert EF Core, um die Verbindungszeichenfolgen aus "App.config" aufzulösen. Für EF Core: 3-9.

GitHub-Repository | NuGet

Losgelöster Mapper

Ein DTO-Entity-Mapper mit Kompositions-/Aggregationsverarbeitung (ähnlich wie GraphDiff). Für EF Core 3-8.

GitHub-Repository | NuGet

EntityFrameworkCore.Sqlite.NodaTime

Fügt Unterstützung für NodaTime-Typen hinzu, wenn SQLite verwendet wird. Für EF Core: 5-9.

GitHub-Repository | NuGet

ErikEJ.EntityFrameworkCore.SqlServer.Dacpac

Ermöglicht das Reverse Engineering eines EF Core-Modells aus einem SQL Server-Datenebenenanwendungspaket (.dacpac). Für EF Core: 6–9.

GitHub-Repository | NuGet

ErikEJ.EntityFrameworkCore.DgmlBuilder

Generieren Sie DGML-Grafikinhalte, die Ihren DbContext visualisieren. Fügt der DbContext-Klasse die AsDgml()-Erweiterungsmethode hinzu. Für EF Core: 6–9.

GitHub-Repository | NuGet

EntityFramework.Exceptions

Bei Verwendung von Entity Framework Core sind alle Datenbankausnahmen mit DbUpdateException umschlossen. EntityFramework.Exceptions verarbeitet alle datenbankspezifischen Details, um die Einschränkung zu finden, gegen die verstoßen wurde, und ermöglicht Ihnen die Verwendung von typisierten Ausnahmen wie UniqueConstraintException, CannotInsertNullException, MaxLengthExceededException, NumericOverflowException und ReferenceConstraintException, wenn Ihre Abfrage gegen Datenbankeinschränkungen verstößt.

Unterstützt SQL Server, Postgres, MySql, SQLite und Oracle. Für EF Core 3-8.

GitHub-Repository

EntityFrameworkCore.VisualBasic

Fügt VB-Entwurfszeitunterstützung zu EF Core hinzu. Für EF Core 5-8.

GitHub-Repository | NuGet

Laraue.EfCoreTriggers

Fluent-API, um Trigger in Context.OnModelCreating zu deklarieren, die später in Migrationen integriert werden. Anbieter für Postgres, MySQL, SQL Server und SQLite. Für EF Core 5-8.

GitHub-Repository | NuGet

EntityCloner.Microsoft.EntityFrameworkCore

Klonen von Entitäten mithilfe der EF Core-Konfiguration. Sie können mit der Include-Methode zugehörige Daten angeben, die geklont werden sollen. Für EF Core 5-8.

GitHub-Repository | NuGet

Zomp EF Core-Erweiterungen

Stellt Fenster- bzw. Analysefunktionen und binäre Funktionen für EF Core bereit. Anbieter: SQL Server, SQLite, PostgreSQL. Für EF Core 6–8.

GitHub-Repository | NuGet

Entity Framework Ruler

Fügt Entwurfszeitanpassungen des zurückentwickelten Modells hinzu, einschließlich:

  • Klassen-, Eigenschafts- und Navigationsnamen
  • Überspringen der Struktur von Schema, Tabellen oder Spalten.
  • Überschreiben von Eigenschaftstypen, insbesondere für Enumerationen.
  • EF6 EDMX-Unterstützung, die einen reibungslosen 3-stufigen Upgradepfad von EF6 zu EF Core bietet.

Für EF Core 6–8.

GitHub-Repository | CLI-Tool: NuGet | Entwerfen von NuGet

Microsoft.EntityFrameworkCore.DynamicLinq

Mit der Dynamic LINQ-Bibliothek können Sie Abfragen mit dynamischer Zeichenfolge ausführen und einige Hilfsmethoden wie ParseLambda, Parse und CreateClass bereitstellen. Für EF Core: 2-10.

Website | GitHub-Repository | NuGet

EfCoreNexus.Framework

Mit EfCoreNexus wird die Integration des Entity Framework Core in Blazor Anwendungen erleichtert. Durch Reflection werden die Entitätsklassen automatisch hinzugefügt und Ihnen grundlegende CRUD (Create, Read, Update, Delete)-Funktionen bereitgestellt, ohne zusätzlichen Code zu schreiben. Für EF Core: 8.

GitHub-Repository | NuGet

Abgleicher

Aktualisieren Sie ein Entitätsdiagramm im Speicher, indem Sie die entsprechenden Entitäten einfügen, aktualisieren oder entfernen. Für EF Core 6–7.

GitHub-Repository

AutoCompute

Berechnete Eigenschaften, die in EF Core gespeichert werden und sich beim Speichern von Änderungen automatisch aktualisieren. Für EF Core 8

GitHub-Repository | NuGet

EntityFramework.OrderBy

Wendet die Standardreihenfolge auf Entity Framework-Abfragen basierend auf der Fluent-Konfiguration an, um konsistente und deterministische Abfrageergebnisse sicherzustellen. Unterstützt geschachtelte Auflistungen in .Include() Ausdrücken, mehrspaltige Sortierung und automatische Datenbankindexerstellung zum Sortieren von Spalten.

GitHub-Repository | NuGet

EntityFrameworkCore.AuditInterceptor

Eine Bibliothek, die nahtlose Überwachungsfunktionen für Entity Framework Core bereitstellt. Es verfolgt automatisch Entitätsänderungen, einschließlich der Personen, die die Änderungen vorgenommen haben, und wann sie vorgenommen wurden. Die Bibliothek ist in .NET Dependency Injection integriert und unterstützt verschiedene Überwachungsszenarien über einen einfachen Konfigurationsprozess. Für EF Core 6–8.

GitHub-Repository | NuGet

PhenX.EntityFrameworkCore.BulkInsert

Eine leistungsstarke Masseneinfügungserweiterung für Entity Framework Core. Unterstützt SQL Server, PostgreSQL, SQLite, MySQL und Oracle. Für EF Core: 8-9.

Website | GitHub-Repository

SanderTenBrinke.EntityFrameworkCore.Extensions.SqlServer.DataMasking

Dieses Paket konzentriert sich auf das Hinzufügen von Datenformatierungsunterstützung für SQL Server zu EF Core. Für EF Core: 8-9.

GitHub-Repository | NuGet

EFCommenter

Alle XML-Zusammenfassungen von Entitäten, Eigenschaften und Enumerationen werden als Kommentare zu den entsprechenden Datenbanktabellen und -spalten hinzugefügt. Für EF Core: 9.

GitHub-Repository | NuGet

API-Integrationen

Diese Pakete wurden für die direkte Integration in EF Core entworfen, um verschiedene APIs verfügbar zu machen.

Streben

Verbessern Sie die lokale Entwicklungserfahrung, indem Sie die Verwaltung der Konfiguration und Verbindung Ihrer cloudnativen App vereinfachen. Für EF Core: 8-10.

Website | GitHub-Repository | NuGet

HotChocolate

Erstellen Sie Ihren eigenen GraphQL-Endpunkt auf Grundlage einer beliebigen Ressource.

GitHub-Repository | NuGet

GraphQL.EntityFramework

Fügen Sie IQueryable-Unterstützung von Entity Framework zu GraphQL hinzu. Für EF Core 6–8.

GitHub-Repository | NuGet

EntityGraphQL

GraphQL-Server mit enger EntityFramework-Integration. Für EF Core 5-8.

GitHub-Repository | NuGet

OData

Ein Standard für die Implementierung von REST-APIs mit Spezifikationen für die Ermittlung, Filterung, Sortierung, Projektionen, Navigationen, Massenvorgänge und mehr.

GitHub-Repository | NuGet

Erweiterungen für nicht unterstützte EF Core-Versionen

EntityFrameworkCore.SqlServer.HierarchyId

Hinweis

Der Datentyp hierarchyid für SQL Server wird ab EF Core 8 direkt in EF Core unterstützt.

Fügt dem SQL Server EF Core-Anbieter Hierarchyid-Unterstützung hinzu. Für EF Core: 3-7.

GitHub-Repository | NuGet

EntityFrameworkCore.FSharp

Fügt F#-Unterstützung zur Entwurfszeit in EF Core hinzu. Für EF Core 5–6.

GitHub-Repository | NuGet

EntityFrameworkCore.Triggered

Trigger für EF Core. Sie können auf Änderungen an Ihrem DbContext reagieren, bevor und nachdem sie in der Datenbank übernommen wurden. Trigger sind vollständig asynchron und unterstützen Dependency Injection, Vererbung, Kaskadierung und weitere Features. Für EF Core 3–6.

GitHub-Repository | NuGet

Microsoft.EntityFrameworkCore.AutoHistory

Eine Plug-in-Bibliothek, mit deren Hilfe automatisch von EF Core durchgeführte Änderungen an den Daten in einer Verlaufstabelle aufgezeichnet werden. Für EF Core: 2-6.

GitHub-Repository | NuGet

ErikEJ.EntityFrameworkCore.SqlServer.SqlQuery

Hinweis

Unformatierte SQL-Abfragen für nicht zugeordnete Typen werden ab EF Core 8 direkt in EF Core unterstützt.

Stellt die Methoden SqlQueryAsync<T> und SqlQueryValueAsync<T> bereit, mit denen Sie beliebige Klassen oder eine Liste primitiver Typen aus einer unformatierten SQL-Abfrage auffüllen können. Für EF Core 6–7.

GitHub-Repository | NuGet

ErikEJ.EntityFrameworkCore.SqlServer.DateOnlyTimeOnly

Hinweis

Die SQL Server-Zuordnungen DateOnly und TimeOnly werden ab EF Core 8 direkt in EF Core unterstützt.

Verwenden Sie die .NET-Typen DateOnly und TimeOnly mit dem SQL Server-Anbieter für EF Core. Für EF Core 6–7.

GitHub-Repository | NuGet

nHydrate ORM für Entity Framework

Ein O/RM, der stark typisierte, erweiterbare Klassen für Entity Framework erstellt. Der generierte Code ist Entity Framework Core. Es besteht kein Unterschied. Dies ist kein Ersatz für EF oder einen benutzerdefinierten O/RM. Dabei handelt es sich um eine visuelle, Modellierungsebene, die einem Team ermöglicht, komplexe Datenbankschemas zu verwalten. Dies funktioniert gut mit SCM-Software wie Git, sodass mehrere Benutzer mit minimalen Konflikten auf Ihr Modell zugreifen können. Das Installationsprogramm verfolgt Modelländerungen und erstellt Upgradeskripts. Für EF Core: 3.

GitHub-Repository

Microsoft.EntityFrameworkCore.UnitOfWork

Ein Plug-In für Microsoft.EntityFrameworkCore zur Unterstützung von Repositorys, Arbeitseinheitsmustern und mehreren Datenbanken, die verteilte Transaktionen unterstützen. Für EF Core 2–3.

GitHub-Repository

Toolbelt.EntityFrameworkCore.IndexAttribute

Wiederbelebung des [Index]-Attributs (mit Erweiterung für die Modellbildung). Für EF Core 2–5.

GitHub-Repository | NuGet

EfCoreTemporalTable

Hinweis

Temporäre SQL Server-Tabellen werden in ab EF Core 6 direkt in EF Core unterstützt.

Mit dieser Erweiterung können Sie mithilfe bereits eingeführter Erweiterungsmethoden temporale Abfragen für eine Datenbank Ihrer Wahl ausführen: AsTemporalAll(), AsTemporalAsOf(date), AsTemporalFrom(startDate, endDate), AsTemporalBetween(startDate, endDate), AsTemporalContained(startDate, endDate). Für EF Core 3–5.

GitHub-Repository | NuGet

EntityFrameworkCore.TemporalTables

Hinweis

Temporäre SQL Server-Tabellen werden in ab EF Core 6 direkt in EF Core unterstützt.

Eine Erweiterungsbibliothek für Entity Framework Core, mit der Entwickler, die SQL Server nutzen, temporale Tabellen einfach verwenden können. Für EF Core 2–5.

GitHub-Repository | NuGet

Dabble.EntityFrameworkCore.Temporal.Query

Hinweis

Temporäre SQL Server-Tabellen werden in ab EF Core 6 direkt in EF Core unterstützt.

LINQ-Erweiterungen für Entity Framework Core 3.1 zur Unterstützung von Abfragen temporaler Tabellen in Microsoft SQL Server. Für EF Core: 3.

GitHub-Repository | NuGet

EntityFrameworkCore.NCache

Der NCache-Anbieter von Entity Framework Core ist ein verteilter Cacheanbieter der zweiten Ebene zum Zwischenspeichern von Abfrageergebnissen. Die verteilte Architektur von NCache macht NCache skalierbarer und hochverfügbarer. Für EF Core 2–3.

Website | Nuget

Ramses

Lebenszyklus-Hooks (für SaveChanges). Für EF Core 2–3.

GitHub-Repository | NuGet

EntityFrameworkCore.Extensions

Eine Erweiterungsbibliothek für die Erweiterungen Dynamic Data Masking (SQL Server) und MigrationBuilder und ModelBuilder. Für EF Core: 5.

Eine aktualisierte Verzweigung für die Datenmaskierungsfunktion finden Sie unter EntityFrameworkCore.Extensions.SqlServer.DataMasking

GitHub-Repository | NuGet

EFCore.SoftDelete

Eine Implementierung für das Soft-Delete von Entitäten. Für EF Core 3–6.

GitHub-Repository | NuGet

Ainoraz.EFCore.IncludeBuilder

Erweiterung für EF Core, die alternative Include Syntax bereitstellt, um die folgenden Szenarien besser zu unterstützen:

  • Laden mehrerer Entitäten auf derselben Ebene (gleichgeordnete Elemente).
  • Erweiterungsmethoden schreiben, die von der Schachtelungsebene unabhängig sind.

Für EF Core 6–7.

LessCode.EFCore.StronglyTypedId

Ein Quellgenerator, der stark typisierte ID-Klassen automatisch für Entitäten generieren kann. Für EF Core:  7.

GitHub-Repository