Plug-In-APIs

EF Core-Erweiterungen erfordern häufig das Hinzufügen von Logik zu kernen EF- und Anbieterkomponenten. Dies erfordert in der Regel das Erstellen einer abgeleiteten Komponente und das Ersetzen des ursprünglichen Komponenten im internen Dienstanbieter. Dies wird kompliziert, wenn mehrere Erweiterungen dieselbe Komponente ändern möchten. In diesen Fällen stellen wir Plug-In-APIs bereit, damit mehrere Erweiterungen zusätzliche Logik bereitstellen können.

Liste der Dienstleistungen

Es folgt eine Liste der Plug-In-APIs.

Service Beschreibung
ITypeMappingSourcePlugin Fügt Zuordnungen zwischen .NET-Typen und primitiven Speichertypen hinzu.
IRelationalTypeMappingSourcePlugin Fügt Zuordnungen zwischen .NET-Typen und primitiven relationalen Datenbanktypen hinzu.
IConventionSetPlugin Fügt Modellbaukonventionen hinzu.
IMemberTranslatorPlugin Fügt SQL-Übersetzungen für .NET-Eigenschaften hinzu.
IMethodCallTranslatorPlugin Fügt SQL-Übersetzungen für .NET-Methoden hinzu.
IAggregateMethodCallTranslatorPlugin Fügt SQL-Übersetzungen für aufzählbare .NET-Methoden hinzu.
IEvaluatableExpressionFilterPlugin Erzwingt die Serverauswertung bestimmter Ausdrücke.
IProviderCodeGeneratorPlugin Scaffold-Provider- und DbContext-Optionen.

Beispiele

Hier sind einige Erweiterungen, die diese APIs verwenden:

Erweiterung Beschreibung
Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite Fügt Typzuordnungen und SQL-Übersetzungen für spatiaLite-Typen hinzu.
Microsoft.EntityFrameworkCore.SqlServer.HierarchyId Fügt Typzuordnungen und SQL-Übersetzungen für den Hierarchie-ID-Typ von SQL Server hinzu.
Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite Fügt Typzuordnungen und SQL-Übersetzungen für die Geografie- und Geometrietypen von SQL Server hinzu.
EFCore.CheckConstraints Fügt Modellbaukonventionen für relationale Datenbanküberprüfungseinschränkungen hinzu.
EFCore.NamingConventions Fügt Modellbaukonventionen für alternative relationale Datenbanktabellen-, Spalten- und Einschränkungsnamen hinzu.