實體框架 - 概述



什麼是實體框架?

實體框架首次釋出於 2008 年,是 Microsoft 用於.NET 應用程式與關係資料庫之間互動的主要手段。實體框架是一個物件關係對映器 (ORM),這是一種簡化軟體中物件與關係資料庫的表和列之間對映的工具。

  • 實體框架 (EF) 是一個用於 ADO.NET 的開源 ORM 框架,它是 .NET Framework 的一部分。

  • ORM 負責建立資料庫連線和執行命令,以及獲取查詢結果並自動將這些結果作為應用程式物件。

  • ORM 還幫助跟蹤對這些物件的更改,並在收到指令時,它還會將這些更改持久儲存回資料庫。

為什麼要使用實體框架?

實體框架是一個 ORM,而 ORM 的目標是透過減少應用程式中使用的資料持久化冗餘任務來提高開發人員的生產力。

  • 實體框架可以生成讀取或寫入資料庫資料的必要資料庫命令併為您執行它們。

  • 如果要進行查詢,可以使用 LINQ to Entities 對域物件進行查詢。

  • 實體框架將在資料庫中執行相關的查詢,然後將結果具體化為域物件的例項,供您在應用程式中使用。

市場上還有其他 ORM,例如 NHibernate 和 LLBLGen Pro。大多數 ORM 通常將域型別直接對映到資料庫模式。

Typical ORM

實體框架具有更細粒度的對映層,因此您可以自定義對映,例如,透過將單個實體對映到多個數據庫表,甚至將多個實體對映到單個表。

EF Runtime Metadata
  • 實體框架是 Microsoft 建議用於新應用程式的資料訪問技術。

  • ADO.NET 似乎直接引用資料集和資料表的技術。

  • 實體框架是所有前瞻性投資的所在,這種情況已經持續數年了。

  • Microsoft 建議您對所有新開發都使用實體框架而不是 ADO.NET 或 LINQ to SQL。

概念模型

對於習慣於以資料庫為中心進行開發的開發人員來說,使用實體框架最大的變化在於它允許您專注於業務領域。您希望應用程式執行什麼功能,而不會受到資料庫功能的限制?

  • 在實體框架中,焦點稱為概念模型。它是應用程式中物件的模型,而不是用於持久化應用程式資料的資料庫模型。

  • 您的概念模型可能與您的資料庫模式一致,也可能大相徑庭。

  • 您可以使用視覺化設計器來定義您的概念模型,然後它可以生成您最終將在應用程式中使用的類。

  • 您可以只定義您的類並使用實體框架的“程式碼優先”功能。然後實體框架將理解概念模型。

Conceptual Model

無論哪種方式,實體框架都會弄清楚如何從您的概念模型遷移到您的資料庫。因此,您可以對概念模型物件進行查詢並直接使用它們。

特性

以下是實體框架的基本特性。此列表是根據最顯著的特性以及關於實體框架的常見問題建立的。

  • 實體框架是一個 Microsoft 工具。
  • 實體框架正在作為開源產品開發。
  • 實體框架不再與 .NET 發行週期繫結或依賴。
  • 可與任何具有有效實體框架提供程式的關係資料庫一起使用。
  • 從 LINQ to Entities 生成 SQL 命令。
  • 實體框架將建立引數化查詢。
  • 跟蹤對記憶體中物件的更改。
  • 允許插入、更新和刪除命令生成。
  • 可與視覺化模型或您自己的類一起使用。
  • 實體框架支援儲存過程。
廣告
© . All rights reserved.