EF架构~了解一下,ADO.NET Entity Framework
回到目錄
以下文章部分來自百度百科
背景
長久以來,程序設計師和數據庫總是保持著一種微妙的關系,在商用應用程序中,數據庫一定是不可或缺的元件,這讓程序設計師一定要為了連接與訪問數據庫而去
學習 SQL 指令,因此在信息業中有很多人都在研究如何將程序設計模型和數據庫集成在一起,對象關系對應 (Object-Relational Mapping) 的技術就是由此而生,像Hibernate或NHibernate都是這個技術下的產物,而微軟雖然有了ADO.NET這 個數據訪問的利器,但卻沒有像NHibernate這樣的對象對應工具,因此微軟在.NET Framework 2.0發展時期,就提出了一個ObjectSpace的概念,ObjectSpace可以讓應用程序可以用完全對象化的方法連接與訪問數據庫,其技術概念 與NHibernate相當類似,然而ObjectSpace工程相當大,在.NET Framework 2.0完成時仍無法全部完成,因此微軟將ObjectSpace納入下一版本的.NET Framework中,并且再加上一個設計的工具(Designer),構成了現在的 ADO.NET Entity Framework。
Entity Framework 利用了抽象化數據結構的方式,將每個數據庫對象都轉換成應用程序對象 (entity),而數據字段都轉換為屬性 (property),關系則轉換為結合屬性 (association),讓數據庫的 E/R 模型完全的轉成對象模型,如此讓程序設計師能用最熟悉的編程語言來調用訪問。而在抽象化的結構之下,則是高度集成與對應結構的概念層、對應層和儲存層,以 及支持 Entity Framework 的數據提供者 (provider),讓數據訪問的工作得以順利與完整的進行。
(1) 概念層:負責向上的對象與屬性顯露與訪問。
(2) 對應層:將上方的概念層和底下的儲存層的數據結構對應在一起。
(3) 儲存層:依不同數據庫與數據結構,而顯露出實體的數據結構體,和 Provider 一起,負責實際對數據庫的訪問和 SQL 的產生。
?
實例:
微軟自己的entity framework工具主要為linq to sql和Ado.net entity data Model等
應用:
事件上,微軟再推出MVC架構方案之后,使得無論是linq to sql還是Ado.net entity data Model這兩個數據持久化工具發揮的作用越來越明顯.他們實現了數據庫的面向對象化,把數據表中的字段看成是對象的屬性,把表之間的關系看成是對象之間的關系.
回到目錄
總結
以上是生活随笔為你收集整理的EF架构~了解一下,ADO.NET Entity Framework的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做梦梦到骨灰盒是什么意思
- 下一篇: 艾伟:ASP.NET跨页面传值技巧总结