實體架構 6

Entity Framework 6(EF6)是一款經過多年功能開發與穩定的 .NET 物件關聯映射器(O/RM)。

作為 O/RM,EF6 減少了關聯型與物件導向世界之間的阻抗不匹配,使開發者能撰寫能與關聯型資料庫中儲存的資料互動的應用程式,這些物件使用強型別的 .NET 物件代表應用程式的領域,並免除通常需要撰寫大量資料存取「管道」程式碼的需求。

EF6實作了許多流行的O/RM功能:

  • 不依賴任何EF類型的 POCO 實體類別的映射
  • 自動變更追蹤
  • 身份解析與工作單位
  • 立即、延遲和明確的載入
  • 使用 LINQ(語言集成查詢) 進行強型別查詢的翻譯
  • 豐富的映射功能,包括支援:
    • 一對一、一對多與多對多關係
    • 繼承(每個階層的表、每個類型及每個具體類別的表)
    • 複雜類型
    • 預存程序
  • 一個視覺設計師來建立實體模型。
  • 提供一種「以程式碼優先」的體驗,透過撰寫程式碼來建立實體模型。
  • 模型可以從現有資料庫生成後手動編輯,或是從零開始建立,然後用來產生新的資料庫。
  • 與 .NET Framework 應用程式模型(包括 ASP.NET)整合,並透過資料綁定與 WPF 和 WinForms 整合。
  • 基於 ADO.NET 的資料庫連接,並有多種 供應商 可連接 SQL Server、Oracle、MySQL、SQLite、PostgreSQL、DB2 等。

我應該用 EF6 還是 EF Core?

EF Core 是 Entity Framework 的現代化、輕量化且可擴充的版本,具備與 EF6 非常相似的能力與優勢。 EF Core 是完全重寫版本,包含許多 EF6 沒有的新功能,儘管它仍缺少 EF6 中一些最先進的映射功能。 如果 EF Core 的功能符合你的需求,可以考慮在新應用中使用它。 《比較EF核心與EF6 》更詳細探討了這項選擇。

開始使用

將 EntityFramework NuGet 套件加入你的專案,或安裝 Visual Studio 的 Entity Framework 工具。 接著多看影片、閱讀教學和進階文件,幫助你充分發揮 EF6 的效能。

過去的實體框架版本

這是最新版本 Entity Framework 6 的文件,雖然其中許多內容也適用於過去的版本。 請參考「 最新過去發行」 ,了解完整的 EF 發行清單及其引入的功能。