外掛程式 API

EF Core 擴充通常需要在核心 EF 及提供者元件中加入邏輯。 這通常需要建立衍生元件,並在內部服務提供者中替換原始元件。 當多個擴充套件想更改同一個元件時,情況會變得複雜。 在這些情況下,我們提供外掛 API,允許多個擴充功能提供額外邏輯。

服務清單

以下是外掛式 API 的列表。

Service 說明
ITypeMappingSourcePlugin 新增 .NET 類型與原始儲存類型之間的映射。
IRelationalTypeMappingSourcePlugin 新增 .NET 類型與原始關聯式資料庫類型之間的映射。
IConventionSetPlugin 新增模型製作慣例。
IMemberTranslatorPlugin 新增 .NET 屬性的 SQL 轉換功能。
IMethodCallTranslatorPlugin 新增 .NET 方法的 SQL 轉換功能。
IAggregateMethodCallTranslatorPlugin 新增 .NET 可枚舉方法的 SQL 轉譯。
IEvaluatableExpressionFilterPlugin 強制伺服器進行某些表達式的評估。
IProviderCodeGeneratorPlugin Scaffolds 提供者與 DbContext 選項。

Examples

以下是一些利用這些 API 的擴充功能:

擴充功能 說明
Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite 新增 SpatiaLite 型別的型別映射與 SQL 轉換功能。
Microsoft.EntityFrameworkCore.SqlServer.HierarchyId 新增 SQL Server hierarchyid 型態的型別映射與 SQL 轉換。
Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite 新增 SQL Server 地理與幾何類型的類型映射與 SQL 轉換。
EFCore.CheckConstraints 新增關聯式資料庫檢查約束的模型建構慣例。
EFCore.命名慣例 新增了用於替代關聯式資料庫資料表、欄位及限制名稱的模型建構慣例。