Entity Framework 6.0 入門系列 第一篇


Entity Framework 6.0 入門系列 第一篇

好幾年前接觸過一些ef感覺不是很好用,廢棄。但是 Entity Framework 6.0是經過幾個版本優化過的產物,性能和功能不斷完善,開始學習。

 

EF ,全稱Entity FramWork。就是微軟以ADO.NET為基礎發展的所謂ORM(對象關系映射框架,或者說是數據持久化框架)。

簡單的來說就是根據實體對象操作數據表中數據的一種面向對象的操作框架,具體的底層也是調用ADO.NET。

EF支持SQL Server,Mysql,Oracle,DB2等數據庫上使用,我們可以將數據作為業務對象和實體來進行處理,開發者可以使用Linq來操作和查詢數據。

最終會生成SQL語句來執行,可以打開SQL Server Profiler來查看具體生成的每一條SQL語句; 

Entity Framework  有三種領域建模方式,Code First,Model First,及Database First;

先簡單描述下這三種模式的區別

 

1.Database First是基於已存在的數據庫,利用某些工具(如VS提供的EF設計器)創建實體類,數據庫對象與實體類的匹配關系等,你也可以手動修改這些自動生成的代碼及匹配文件。也就是從一個數據庫開始,然后生成實體框架和相應代碼。我們我們又DBA來創建數據庫或者已經有存在的數據庫,這種方式作為首選;


2.Model First 是先利用某些工具(如VS的EF設計器)設計出可視化的實體數據模型及他們之間的關系,然后再根據這些實體、關系去生成數據庫對象及相關代碼文件。


3.Code First 這種方式需要先寫一些代碼,如實體對象,數據關系等,然后根據已有的代碼描述,自動創建數據對象。但其實這種方法與Model First是非常類似的。我們自己寫的代碼,其實就是用代碼表示實體模型,而Model First是用可視化的方式描述了實體模型。這個是最受歡迎的領域建模方式,比較靈活;

 

這三種方式各有利弊,使用過程中我們要按實際需求來選擇。這些工具的出現和使用,大大提高了開發人員的開發速度,使得數據庫、模型等出現了復用、擴展的可能,在應對變化方面也做了足夠的工作。這些工具所體現的服務思想更提醒我們要全方位去考慮問題,在產品中做好應對變化的措施。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM