訓練
模組
使用 EF Core 保存和擷取關聯式資料 - Training
本課程模組會引導您完成建立資料存取專案的步驟。 您可以使用 Entity Framework Core (EF Core) 連線到關聯式資料庫,並建構建立、讀取、更新和刪除 (CRUD) 查詢。
這些工具和擴充功能提供 Entity Framework Core 的額外功能。
重要
延伸模組以各種來源建置而成,且不屬於 Entity Framework Core 專案維護的一部份。 考慮使用協力廠商延伸模組時,請務必評估其品質、授權、相容性、支援等,確保其符合您的需求。 特別是針對舊版 EF Core 所建置的延伸模組,可能需要予以更新,才能搭配最新版本使用。
EF Core Power Tools 是 Visual Studio 延伸模組,在簡單使用者介面中公開各種設計階段工作。 它包含對現有資料庫的 DbContext 和實體類別進行的反向工程、SQL Server DACPAC,以及模型的視覺化效果和圖表。 針對 EF Core:6-9。
EF Core Power Tools CLI 是 .NET 全域命令行工具。 它可讓您從現有的資料庫和 SQL Server DACPAC 進行 DbContext 和實體類別的進階反向工程。 針對 EF Core(Entity Framework Core):6-9。
NuGet (英文)
LLBLGen Pro 是實體模型化解決方案,具備 Entity Framework 與 Entity Framework Core 的支援。 您可加以利用來輕鬆定義實體模型,並將其對應至資料庫,優先使用資料庫或模型後,即可開始直接撰寫查詢。 適用於 EF Core:2-8。
Entity Developer 是功能強大的 O/RM 設計工具,適用於 ADO.NET Entity Framework、NHibernate、LinqConnect、Telerik Data Access,以及 LINQ to SQL。 它支援使用 model first 或 database first 方法,以及 C# 或 Visual Basic 程式碼產生,以視覺化的方式設計 EF Core 模型。 適用於 EF Core:2-7。
EF Core Sidekick 是 Visual Studio 擴充功能,可增強 Visual Studio 中自動程式碼產生的強大功能。 它提供一組工具和範本,可從現有資料庫產生 EF Core 實體和衍生 DbContext,然後從實體產生服務和 REST API。 適用於 EF Core:6-8。
Visual Studio Marketplace | 網站
Entity Framework 視覺效果編輯器是 Visual Studio 延伸模組,可為 EF 6 和 EF Core 類別的視覺效果設計新增 O/RM 設計工具。 因為程式碼會透過 T4 範本產生,所以能加以自訂來滿足各種需求。 它支援繼承、單向及雙向關聯、列舉,還能夠對類別進行色彩編碼以及新增文字區塊,以說明設計中可能較不易懂的部分。 適用於 EF Core:2-8。
IWAPI (立即 Web API) 是適用於 .NET Core 的 Scaffolding 引擎,可將 DbCoNtext 類別、實體與模型的產生自動化,並從任何 SQL Server 資料庫建立可運作的 Web API。
efmig 是多平臺 GUI 應用程式,可在使用 Entity Framework Core 時加速日常開發。 它涵蓋最受歡迎的使用案例,透過簡單的一鍵式介面來產生移轉程式碼和指令碼。 適用於 EF Core:2-8。
使用 Entity Framework Core 查詢方案偵錯工具視覺化檢視,您可以直接在 Visual Studio 內檢視查詢的查詢方案。 視覺化檢視目前支援 SQL Server 和 PostgreSQL。 適用於 EF Core:2-8。
外掛程式庫,能夠自動將 EF Core 執行的資料變更記錄到記錄資料表中。 適用於 EF Core:2-6。
第二個層級快取是查詢快取。 EF 命令的結果會存放在快取中,使相同的 EF 命令會從快取擷取其資料,而不必再次向資料庫再次執行命令。 適用於 EF Core:3-8。
可讓您搭配 Handlebars 範本使用 Entity Framework Core 工具鏈,自訂從現有資料庫進行反向工程的類別。 適用於 EF Core:2-8。
NeinLinq 擴充了 LINQ 提供者 (例如 Entity Framework),並提供以下功能:重複使用函式、重寫查詢,以及使用可翻譯的述詞和選取器建置動態查詢。 適用於 EF Core:3-8。
適用於大量作業 (插入、更新、刪除) 的 EF Core 延伸模組。 適用於 EF Core:2-8。
新增設計階段複數表示。 針對 EF Core:2-9。
延伸驗證以允許使用 Entity Framework 進行快照集測試。 適用於 EF Core:3-8。
提供 SQL Server Express LocalDB 的包裝函式,以簡化針對 Entity Framework 執行測試的作業。 適用於 EF Core:3-8。
適用於 EF Core 的彈性投影魔術。 在查詢中使用屬性、方法和擴充方法,而不需用戶端評估。 適用於 EF Core:3-6、8。
EF Core 的觸發程序。 在 DbCoNtext 變更認可至資料庫之前和之後,回應那些變更。 觸發程序是完全非同步的,而且支援相依性插入、繼承、串聯等等。 適用於 EF Core:3-6。
使用下列功能擴充 DbContext:Include Filter、Auditing、Caching、Query Future、Batch Delete、Batch Update 等等。 適用於 EF Core:2-8。
網站 | GitHub 存放庫 | NuGet
使用高效能大量作業擴充 DbContext:BulkSaveChanges、BulkInsert、BulkUpdate、BulkDelete、BulkMerge 等等。 適用於 EF Core:2-8。
新增在 LINQ Lambda 中呼叫擴充方法的支援。 適用於 EF Core:3-6。
關聯式資料庫的替代 (非 MS 型) Language-integrated Query (LINQ) 技術。 其可讓您使用 C# 來撰寫強型別 SQL 查詢。 適用於 EF Core:3-8。
SELECT
、FROM
、WHERE
) 宣告為第一級 C# 方法,以結合熟悉的語法與 IntelliSense、型別安全和重構。因此,SQL 會變成在本機公開其 API 的「另一個」類別庫,實際上就是「整合語言的 SQL」。
這會自動使所有資料表與資料行名稱採用全為大寫或小寫字母,並以底線作為空格的格式。 適用於 EF Core:3-8。
此外掛程式可讓您選擇加入一些檢查條件約束 - 只要加以啟用,系統就會自動為您建立。 針對EF Core: 5-9.
針對 NodaTime 類型,將原生支援新增至 SQL Server 的 EntityFrameworkCore。 適用於 EF Core 版本 3 到 9。
注意
自 EF Core 8 起,EF Core 內直接支援 SQL Server hierarchyid 資料類型。
為 SQL Server EF Core 提供者新增 hierarchyid 支援。 適用於 EF Core:3-7。
將 LINQ 查詢轉換為 SQL 運算式的替代轉譯程式。 適用於 EF Core:2-8。
包括對進階 SQL 功能的支援,例如 CTE、大量複製、資料表提示、視窗型函式、暫存資料表,以及資料庫端的建立/更新/刪除作業。
虛刪除實體的實作。 適用於 EF Core:3-6。
擴充 EF Core,從 App.config 解析 連接字串。針對 EF Core:3-9。
具有組合/彙總處理 (類似 GraphDiff) 的DTO-Entity 對應工具。 適用於 EF Core:3-8。
新增使用 SQLite 時對 NodaTime 類型的支援。 適用於 EF Core:5-8。
從 SQL Server 資料層應用程式套件 (.dacpac) 啟用 EF Core 模型的反向工程。 適用於 EF Core 版本:6 到 9。
產生會將您的 DbContext 視覺化的 DGML (圖形) 內容。 將 AsDgml () 擴充方法新增至 DbCoNtext 類別。 針對 EF Core:6-9。
注意
從 EF Core 8 起,EF Core 內直接支援針對未對應的類型進行原始 SQL 查詢。
提供 SqlQueryAsync<T>
和 SqlQueryValueAsync<T>
方法,協助您從原始 SQL 查詢填入任意類別或基本類型清單。 適用於 EF Core:6-7。
搭配 EF Core SQL Server 提供者使用 DateOnly
和 TimeOnly
.NET 類型。 適用於 EF Core:6-7。
使用 Entity Framework Core 時,所有資料庫例外狀況都會包裝在 DbUpdateException 中。 EntityFramework.Exceptions 會處理所有資料庫專有詳細資料,以尋找違反的條件約束,並允許您在查詢違反資料庫條件約束時使用具型別例外狀況,例如 UniqueConstraintException
、CannotInsertNullException
、MaxLengthExceededException
、NumericOverflowException
、ReferenceConstraintException
。
支援 SQL Server、Postgres、MySql、SQLite 與 Oracle。 適用於 EF Core:3-8。
新增 F# 設計階段支援到 EF Core。 適用於 EF Core:5-6。
新增 VB 設計階段支援到 EF Core。 適用於 EF Core:5-8。
Entity Framework 的擴充功能,可讓您建立並管理多個查詢篩選條件。 適用於 EF Core:5-7。
這是 EntityFrameworkCore 上 Pagination 的程式庫。 能以延伸模組形式完美地搭配 Entity Framework Core 運作,而且同時支援非同步與同步。 其也有許多常用的實用功能,特別是在 Web 開發方面。 適用於 EF Core:2-7。
Fluent API 可宣告 Context.OnModelCreating
中的觸發程序,其稍後會建置到移轉中。 Postgres、MySQL、SQL Server 與 SQLite 的提供者。 適用於 EF Core:5-8。
使用 EF Core 設定複製實體。 您可以使用 Include
方法來指定要包複製的相關資料。 適用於 EF Core:5-8。
提供 EF Core 的視窗 (分析) 函式和二進位函式。 提供者:SQL Server、SQLite、PostgreSQL。 適用於 EF Core:6-8。
EF Core 的延伸模組,可提供替代的 Include
語法,以便為下列案例提供更好的支援:
適用於 EF Core:6-7。
新增反向工程模型的設計時間自訂,包括:
適用於 EF Core:6-8。
GitHub 存放庫 | CLI 工具 NuGet | 設計 NuGet
可以自動為實體產生強型別識別碼類別的來源產生器。 適用於 EF Core:7。
動態 LINQ 程式庫可讓您使用動態字串執行查詢,並提供一些公用程式方法,例如 ParseLambda、Parse 和 CreateClass。 適用於 EF Core:2-8。
網站 | GitHub 存放庫 | NuGet
EfCoreNexus 可協助將實體架構核心整合到 Blazor 應用程式中。 透過反映,它會自動新增實體類別,併為您提供基本 Crud 功能,而不需要撰寫額外的程序代碼。
適用於 EF Core:8。
插入、更新及移除各自的實體,藉此將存放區中的實體圖表更新為指定的圖表。 適用於 EF Core:6-7。
EF Core 中保存的計算屬性會在儲存變更時自動更新。 適用於 EF Core:8。
這些套件的設計旨在直接與 EF Core 整合,以公開各種 API。
藉由簡化雲端原生應用程式的設定和互相連線的管理,增強本機開發體驗。 適用於 EF Core:8。
網站 | GitHub 存放庫 | NuGet
在任何資源之上建置您自己的 GraphQL 端點。
將 Entity Framework IQueryable
支援新增至 GraphQL。 適用於 EF Core:6-8。
具有緊密 EntityFramework 整合的 GraphQL 伺服器。 適用於 EF Core:5-8。
使用探索、篩選、排序、投影、瀏覽、大量作業等規格實作 REST API 的標準。
為 Entity Framework 建立可延伸類別的強型別 O/RM。 產生的程式碼為 Entity Framework Core。 因此兩者沒有任何不同。 這不能取代 EF 或自訂 O/RM。 這是一種視覺化的模型化層,可讓小組管理複雜的資料庫結構描述。 適用於 Git 這類的 SCM 軟體,允許多使用者存取模型,但具有最少的衝突。 安裝程式會追蹤模型變更並建立升級指令碼。 適用於 EF Core:3。
Microsoft.EntityFrameworkCore 的外掛程式,可支援存放庫、工作模式的單位,以及支援分散式交易的多個資料庫。 適用於 EF Core:2-3。
[Index] 屬性的復興 (附有模型組建的延伸模組)。 適用於 EF Core:2-5。
注意
從 EF Core 6 開始,EF Core 內就直接支援 SQL Server 暫存資料表。
使用下列引進的擴充方法,輕鬆地在您慣用的資料庫上執行時態性查詢:AsTemporalAll()
、AsTemporalAsOf(date)
、AsTemporalFrom(startDate, endDate)
、AsTemporalBetween(startDate, endDate)
、AsTemporalContained(startDate, endDate)
。 適用於 EF Core:3-5。
注意
從 EF Core 6 開始,EF Core 內就直接支援 SQL Server 暫存資料表。
Entity Framework Core 的延伸模組程式庫,可讓使用 SQL Server 的開發人員輕鬆地使用時態表。 適用於 EF Core:2-5。
注意
從 EF Core 6 開始,EF Core 內就直接支援 SQL Server 暫存資料表。
Entity Framework Core 3.1 的 LINQ 延伸模組,以支援 Microsoft SQL Server 時態表查詢。 適用於 EF Core:3。
NCache Entity Framework Core Provider 是快取查詢結果的分散式第二層級快取提供者。 NCache 的分散式架構使其更具可擴縮性與高可用性。 適用於 EF Core:2-3。
生命週期勾點 (針對 SaveChanges)。 適用於 EF Core:2-3。
訓練
模組
使用 EF Core 保存和擷取關聯式資料 - Training
本課程模組會引導您完成建立資料存取專案的步驟。 您可以使用 Entity Framework Core (EF Core) 連線到關聯式資料庫,並建構建立、讀取、更新和刪除 (CRUD) 查詢。
文件
DbContext 的存留期、設定與初始化 - EF Core
使用或不使用相依性插入來建立與管理 DbCoNtext 執行個體的模式
透過 Fluent API、資料批註和慣例建立及設定 Entity Framework Core 模型的概觀。
如何使用 Entity Framework Core 設定資料表分割和實體分割。