ADO.NET 開發高手系列
主講人:章立民台灣微軟資深特約講師台灣微軟最有價值專家資深電腦圖書作家
ADO.NET 開發高手線上教學課程第二個單元 Web Form 網頁的資料架構與資料繫結技術
Web Form 網頁資料存取的基本概念
Web Form 網頁的資料存取和 Windows Form 表單的資料存取在許多方面都不盡相同
狀態管理
伺服器和用戶端的分離
延展性
Web Form 網頁之資料存取的理念基礎:
採用中斷連接模型
假設資料讀取的頻率遠高於資料更新的頻率
期望使用最少的伺服器資源
使用遠端處理序存取資料,也就是分散式資料存取
中斷連接模型(Disconnected Model)
Web Form 網頁是中斷連接的,其資料存取亦是採用此種模式。
中斷連接模型決定您在 Web Form 網頁中的資料存取方式:
您所使用的資料於每一次往返中並不是自動可使用的。
請勿讓連接至資料來源的連線持續保持開啟狀態。
每一次往返於伺服器時,只會執行單項的資料存取作業。
資料的讀取與更新頻率
大多數的資料存取作業都是採用唯讀模式。
Web Form 網頁的資料繫結架構是單向的。
擁有更高的效率。
Web Form 網頁預設並沒有內含將控制項資料寫回資料來源的方法,您必須自行撰寫程式碼邏輯來完成。
降低伺服器的負荷
網頁中的任何資料存取都會增加伺服器的處理時間並耗用記憶體。
Web 應用程式在資料存取作業方面的設計準則:
只從資料來源提取出網頁所需的資料。
儘可能使用用戶端的狀態管理來儲存資料。
遠端處理序的資料存取
建議您將資料存取邏輯自使用者介面中抽離出來,而將它擺在能夠與資料來源互動的元件中。
Web Form 網頁事實上是透過一個 XML 資料流與其他的處理序交換資料。
Web Form 網頁的資料來源
資料庫存取
ADO.NET
受管理的資料提供者(Connection 與 Command 物件)
資料集(Dataset)
直接執行 SQL 陳述式或預存程序
XML 資料
將 XML 資料轉換成資料集,並使用 ADO.NET 資料函式來讀取與更新資料。
使用 System.Xml 命名空間的 XML 剖析與處理函式來處理資料。
其他資料來源
Web Form 網頁的資料繫結架構允許您將控制項繫結至任何結構。
您可以繫結至網頁中任何可使用的陣列或集合,以及網頁或其他控制項的屬性。
資料集、資料配接器、與資料讀取器
資料集(DataSet)
應用程式所實際使用之資料的記憶體複本,是名符其實的資料快取。
資料集與其資料來源是中斷連接的,亦即採用一種離線模式。
仍然可以更新資料來源。
用戶端的虛擬關聯式資料庫。
資料配接器(DataAdapter)
資料集與資料來源之間的橋樑。
Fill 方法。
Update 方法。
資料集、資料配接器、與資料讀取器
資料讀取器(DataReader)
對 Web 應用程式而言,我們常常只是執行簡短的作業,顯然這並不需要在數個一系列的要求間保留 DataSet 物件,此時資料讀取器反而是較佳的選擇。
資料讀取器能夠自 SQL 資料庫所提取的資料提供順向唯讀指標。
藉由呼叫 OleDbCommand 或 SqlCommand 的 ExecuteReader 方法可傳回資料讀取器,然後便可將其繫結至