Plugin-API:er

EF Core-tillägg kräver ofta att du lägger till logik i kärnkomponenterna för EF och provider. Detta kräver vanligtvis att du skapar en härledd komponent och ersätter den ursprungliga i den interna tjänstleverantören. Detta blir komplicerat när flera tillägg vill ändra samma komponent. I dessa fall tillhandahåller vi plugin-API:er för att tillåta flera tillägg att tillhandahålla ytterligare logik.

Lista över tjänster

Följande är en lista över plugin-API:er.

Service Beskrivning
ITypeMappingSourcePlugin Lägger till mappningar mellan .NET-typer och primitiva lagringstyper.
IRelationalTypeMappingSourcePlugin Lägger till mappningar mellan .NET-typer och primitiva relationsdatabastyper.
IConventionSetPlugin Lägger till modellbyggkonventioner.
IMemberTranslatorPlugin Lägger till SQL-översättningar för .NET-egenskaper.
IMethodCallTranslatorPlugin Lägger till SQL-översättningar för .NET-metoder.
IAggregateMethodCallTranslatorPlugin Lägger till SQL-översättningar för uppräkningsbara .NET-metoder.
IEvaluatableExpressionFilterPlugin Tvingar serverutvärdering av vissa uttryck.
IProviderCodeGeneratorPlugin Alternativ för scaffolds-provider och DbContext.

Exempel

Här följer några tillägg som använder dessa API:er:

Förlängning Beskrivning
Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite Lägger till typmappningar och SQL-översättningar för SpatiaLite-typer.
Microsoft.EntityFrameworkCore.SqlServer.HierarchyId Lägger till typmappningar och SQL-översättningar för SQL Server-hierarkiidtypen.
Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite Lägger till typmappningar och SQL-översättningar för SQL Server:s geografi- och geometrityper.
EFCore.CheckConstraints Lägger till modellbyggkonventioner för begränsningar för relationsdatabaskontroll.
EFCore.NamingConventions Lägger till modellbyggkonventioner för alternativa relationsdatabastabeller, kolumn- och villkorsnamn.