讀者講解ADO.NET新特性相關(guān)介紹
本文介紹ADO.NET是.NET應(yīng)用程序中用于處理數(shù)據(jù)庫數(shù)據(jù)的首選技術(shù),介紹了ADO.NET新特性、使用DataSet保存和操作數(shù)據(jù)、使用DataAdapter連接不同的數(shù)據(jù)源的最新技術(shù)。
ADO.NET新特性對XML的強大支持、在.NET應(yīng)用程序中使用ADO.NET的時機和位置、利用ADO.NET使用Web服務(wù)的方式等,這些都是我們在.NET應(yīng)用程序開發(fā)過程中要重點關(guān)注的方面。
本書適合熟悉C#基礎(chǔ)編程知識,具有使用Visual Studio.NET和C#命令行編譯器的經(jīng)驗,并希望掌握如何在.NET應(yīng)用程序使用ADO.NET技術(shù)的中高級開發(fā)人員。
本書詳細(xì)介紹了ADO.NET新特性、使用DataSet保存和操作數(shù)據(jù)、使用DataAdapter連接不同的數(shù)據(jù)源的最新技術(shù)、ADO.NET對XML的強大支持、在.NET應(yīng)用程序中使用ADO.NET的時機和位置、ADO.NET新特性使用Web服務(wù)的方式等,這些都是我們在.NET應(yīng)用程序開發(fā)過程中要重點關(guān)注的方面。
在 ASP.NET 之前,通過多次回傳將值恢復(fù)到窗體字段中完全是頁面開發(fā)人員的事,他們將不得不從 HTTP 窗體中逐個拾取回傳值,然后再將其推回字段中。幸運的是,現(xiàn)在 ASP.NET 可以自動完成這項任務(wù),從而為開發(fā)人員免除了一項令人厭煩的工作,同時也無需再為窗體編寫大量的代碼。
但這并不是 ViewState。ADO.NET新特性是一種機制,ASP.NET 使用這種機制來跟蹤服務(wù)器控件狀態(tài)值,否則這些值將不作為 HTTP 窗體的一部分而回傳。例如,由 Label 控件顯示的文本默認(rèn)情況下就保存在 ViewState 中。作為開發(fā)人員,您可以綁定數(shù)據(jù),或在首次加載該頁面時僅對 Label 編程設(shè)置一次,在后續(xù)的回傳中,該標(biāo)簽文本將自動從 ViewState 中重新填充。#t#
因此,除了可以減少繁瑣的工作和代碼外,ViewState 通常還可以減少數(shù)據(jù)庫的往返次數(shù)。不過ViewState 確實沒有什么神秘之處,它是由 ASP.NET 頁面框架管理的一個隱藏的窗體字段。當(dāng) ASP.NET 執(zhí)行某個頁面時,該頁面上的 ViewState 值和所有控件將被收集并格式化成一個編碼字符串,然后被分配給隱藏窗體字段的值屬性(即 <input type=hidden>)。
由于隱藏窗體字段是發(fā)送到客戶端的頁面的一部分,所以 ADO.NET新特性被臨時存儲在客戶端的瀏覽器中。如果客戶端選擇將該頁面回傳給服務(wù)器,則 ViewState 字符串也將被回傳?;貍骱?,ASP.NET 頁面框架將解析 ViewState 字符串,并為該頁面和各個控件填充 ViewState 屬性。然后,控件再使用 ViewState 數(shù)據(jù)將自己重新恢復(fù)為以前的狀態(tài)。