ADO.NET Entity Framework 簡介

一直對EF都是一知半解的,沒有系統的瞭解過EF有什麼樣的功能,有什麼具體的好處。在接下來的文章中會詳細介紹EF。以下是參考MSDN上的文章,翻譯並加以自己的理解得出的。

ADO.NET Entity Framework 簡介

在微軟的ADO.NET Entity Framework是一個對象/關係映射(Object/Relational Mapping)框架,使開發人員可以使用域特定對象的關係數據,消除了大部分需要開發者編寫的數據訪問管道代碼。使用EF,開發者可以使用LINQ查詢問題,然後檢索和操縱數據作爲強類型的對象,EF的對象關係映射實現提供了服務如便更跟蹤,identtity resolution,延遲加載以及查詢轉換,以便開發者能把重點聚焦在他們特定的應用程序業務邏輯上而不是在數據訪問層面上。

EF的高級功能

  • 兼容大部分的數據庫服務器(包括 SQL Server,Oracle和DB2)
  • 包含了豐富的映射引擎能夠很好的處理真實世界數據庫架構和存儲過程
  • 提供集成VisualStudio 工具直觀地創建實體模型和從現有數據庫自動生成實體模型。新的數據庫可以通過手動編輯完全控制模型的部署
  • 提供使用代碼創建實體模型的Code First的體驗.Code First能夠映射現有數據庫或者從模型生成數據庫。
  • 集成比較好的.NET 應用程序模型,包括ASP.NET,WPF,WCF和WCF 數據服務(前身是ADO.NET 數據 服務)

EF是建立在現有ADO.NET提供模型上,現有提供的模型可以更新和支持新的EF功能。因爲這樣,ADO.NET 開發者能很輕鬆把現有建立在ADO.NET的應用程序搬移到EF上。

用EF開發能提供以下的好處:

  • 減少開發者時間:EF框架提供了核心的數據存取能力因此開發者專注於應用程序的邏輯上。
  • 開發者以應用程序爲中心的對象模型而言,包括的類型有,繼承,複雜成員和關係。在.NET Framework 4.0 中,也支持Plain Old CLR Objects(POCO)實體。
  • 應用程序能從硬編碼倚靠特定的數據引擎或者存儲架構中釋放出來而支持概念模型即物理存儲模型。
  • 能映射對象模型和特定的存儲架構改變已變應用程序代碼。
  • 對概念模型寫的LINQ查詢支持智能感知和編譯時語法驗證。

程序開發者使用EF的Entity Data Model(EDM) 來描述特定的應用程序對象或者概念模型,EDM建立在廣爲人知的ERM(Entity Relationship model)上,來加深對邏輯數據架構上的抽象層次上,EDM的發展成爲整個一套從微軟開發人員和服務器技術通用數據模型主要目標

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章