說明:我的感受在Java領域大型開發都離不了ORM的身影,所謂的SSH就是Spring+Struts+Hibernate,除了在學習基礎知 識的時候被告知可使用JDBC操做數據庫以外,大量的書籍中都是講述使用Hibernate這個ORM工具來操做數據。在.NET中操做數據庫的方式有 多種,除了最直接的方式就是使用ADO.NET以外,還可使用NHibernate這個Hibernate在.NET中的實現ORM,若是你對第三方的 ORM持懷疑態度,你還可使用來自微軟的實現、根正苗紅的Linq或者EntityFramework。
大部分從早期就開始使用.NET開發 的程序員可能對ADO.NET有種迷戀,使用ADO.NET能夠充分將咱們早期的SQL知識發揮得淋漓盡致,而且出於對性能的考慮,有些人對.NET中的 ORM還保持一種觀望態度,包括我本身也是這種態度。不過即便在實際開發中不用,並不表明咱們不能去了解和比較這些技術,任何事物的出現和消亡總有其緣由 的,咱們能夠了解它們的優勢和長處。因此本人抽出了幾個週末的時間分別用ADO.NET、NHibernate、Linq和 EntityFramework來實現對數據庫單表數據的建立、讀取、更新和刪除操做,也就是所謂的CRUD(C:Create/R:Read /U:Update/D:Delete)。
經過實現相同功能的比較,你們本身判斷那種方式更適合本身。須要說明的是,若是在VS2008中使用 EntityFramework就須要安裝VS2008SP1。
在本篇講述的ADO.NET Entity Framework(簡稱Entity Framework或者乾脆稱之爲EF),在本系列涉及到的幾種ORM框架中Entity Framework出現得最晚,在天然界每每遵循着這樣一個規律:出現得越晚的生命力越強。特別是編程語言,新出現的語言每每都是爲了克服當前主流語言的 不足而出現的,就想一樣是OOP語言,Java在不少方面就比C++表現優秀,C#又表現得比Java語言一些,這都是由於新的語言都是在借鑑了現有語言 的優勢並摒棄它們的不足而產生的。在這一點上Entity Framework也是如此。
1、 準備
向 當前項目中添加ADO.NET Entity Framework類,以下圖所示:程序員