Ado/Ado.net與Asp/Asp.net關係
前言
* Asp(Active Server Pages),動態服務頁面,微軟早期推出的WEB應用程式開發技術。
* Asp.Net (Active Server Pages基於.NET Framework),基於.net平臺的動態服務頁面,又稱Asp+;
* Ado (ActiveX Data Objects),ActiveX資料物件,用於表示使用者資料庫中的資料結構和所包含的資料
* Ado.Net(ActiveX Data Objects基於.NET Framework),NET程式設計環境中優先使用的資料訪問介面。
關係
* Ado屬於Asp,Ado.net屬於Asp.net;
* Ado.net和Asp.net分別是基於Asp和Ado改進而來的。
* 可能會有點繞,來張圖大家就清楚了。
一張圖
逐個分析
Asp與Asp.net
* Asp是微軟推出的Web應用程式開發技術,它既不是一種程式語言,也不是一種開發工具,而是一種使用指令碼語言來程式設計的技術框架。
* ASP.Net對Asp做了革命性的升級,擺脫了之前ASP使用指令碼語言來程式設計的缺點,理論上可以使用任何程式語言包括C++ , VB , JS等等.它是面向物件的程式語言,而不是一種指令碼,所以它具有面向物件程式語言的一切特性,比如封裝性、繼承性、多型性等等,這就解決了ASP的很多弱點。
Ado與Ado.net
* 兩者都將資料儲存在記憶體中,但ado以recordset記錄集的形式存放,而ado.net以dataset資料集的形式存放。記錄集和資料集有什麼區別?? 看下一條,^_^
* 在ado中,記錄集是以單表的形式表現。而在ado.net中,資料集是以一個表或多個表的形式表現。
* ado中,與資料庫連線後,會一直保持連線,直到斷開(它為連線而設計)。而在ado.net中,讀取完需要的資料後,會自動斷開連線。這樣就可以極大的提升效率和效能。
* ado.net相對於ado減少了大量的資料轉換,提高了效能。
…… ado.net對於ado的改進還有很多,不再一一列舉了。
Ado.net和Asp.net
* Asp.net是微軟公司的.Net技術框架下的B/S(網頁方向)框架技術。Ado.net則是由Asp.net程式語言編寫的資料訪問層的總括。
* 簡單的理解:asp.net是用來編寫動態網頁的,而動態網頁必定要與資料庫相連來進行資料交換,而用來資料交換的技術稱之為ado.net,所以Asp.net可以包含Ado.net。
* 大家注意:這裡說的是“可以包含”,也就是說ado.net沒用asp.net也可以使用,因為ado.net是資料互動的技術,可以用到winfrom,MFC框架,MVC框架,甚至是控制檯應用程式都可以使用ado.net技術。
總結
後面帶.net的都是改進之後的,在思想和效能上都做出了巨大的革新。Asp.net是做網頁的,做網頁是要用到的Ado.net是與資料庫連線的一種技術。.net是微軟的一種平臺, 我們用的c#,vb.net等都是語言。當然,asp.net可以用c#,vb.net等語言來編寫,而ado.net也依然是由編寫當前asp.net程式的程式語言編寫的。