對于微軟ADO 2.6具體說明
對ADO 2.6進行使用時,一些結構復雜一點的組件在數(shù)據(jù)綁定時操作步驟相近,而另外一些結構簡單一點的組件在數(shù)據(jù)綁定時也比較類似。以下就結合TextBox組件和DataGrid組件分別探討DataSet在實現(xiàn)簡單型數(shù)據(jù)綁定和復雜性數(shù)據(jù)綁定作用和具體實現(xiàn)方法。
我們介紹了從ADO 記錄集得到XML格式數(shù)據(jù)的幾種辦法,也得到了最簡化的字符串。但是有幾個問題你仍然需要注意,ADO 2.6有些字段值還有XML里不支持的字符,比如:"'<>&,象P&G寶潔公司的名稱,Chef Anton's Gumbo Mix產(chǎn)品名字等,在做轉(zhuǎn)換時要進行編碼處理。
當保存分級的記錄集( data shapes)有兩個限制:不能保存參數(shù)化和含有未解決的更新的記錄集。為了更進一步提高性能,你可以把轉(zhuǎn)換工作放到COM/COM+組件中, ASP代碼只進行數(shù)據(jù)的最終表現(xiàn)即可。把業(yè)務層、數(shù)據(jù)層和表現(xiàn)層分開,ASP只需要調(diào)用數(shù)據(jù)組件,ADO 2.6數(shù)據(jù)組件調(diào)用數(shù)據(jù)庫的存儲過程,把結果轉(zhuǎn)換成XML,***只把簡單的XML字符環(huán)串回到ASP程序里,ASP就可以用XSLT把XML進行轉(zhuǎn)換,把結果送到瀏覽器。
ADO自動產(chǎn)生的XML包含了schema信息,它描述這個ADO 2.6里允許有什么節(jié)點和屬性以及采用何種數(shù)據(jù)類型,而且數(shù)據(jù)節(jié)點也增加了名稱空間。schema信息在需要數(shù)據(jù)驗證的地方或進行更復雜的處理或許很有用,但是,大多數(shù)情況下,我們使用的是瘦客戶機,我們不需要schema信息。我們可以利用XSLT來分離出我們想要的信息,去掉多余的信息。因此,我們編寫下面的“ DataCleaner.xsl”:
- SqlCommandBuilder sqlCommandBuilder1 = new SqlCommandBuilder ( sqlDataAdapter1 ) ;
- //以sqlDataAdapter1為參數(shù)來初始化SqlCommandBuilder實例
- dsDataSet1.Tables["Customers"].Rows[0].Delete ( ) ;
- //刪除DataSet中刪除數(shù)據(jù)表Customers中***行數(shù)據(jù)
- sqlDataAdapter1.Update ( dsDataSet1 ,"Customers" ) ;
- //調(diào)用Update方法,以DataSet中的數(shù)據(jù)更新從數(shù)據(jù)庫
- dsDataSet1.Tables["Customers"].AcceptChanges ( ) ;
數(shù)據(jù)綁定是數(shù)據(jù)綁定是綁定技術中使用最頻繁,也是最為重要的技術,也可以說是各種.Net開發(fā)語言開發(fā)數(shù)據(jù)庫應用程序最需要掌握的基本的知識之一。數(shù)據(jù)綁定之所以很重要,是因為在.Net FrameWork SDK中并沒有提供數(shù)據(jù)庫開發(fā)的相關組件,即如:DbTextBox、DbLabel等用于數(shù)據(jù)庫開發(fā)的常用組件在.Net FrameWork SDK中都沒有。而數(shù)據(jù)綁定技術則能夠把TextBox組件"改造"成DbTextBox組件,ADO 2.6把Label組件"改造"成DbLabel組件等等。在組于是也就產(chǎn)生了二個類別。所有這些都與DataSet有直接關系。
數(shù)據(jù)綁定分成二類:簡單型數(shù)據(jù)綁定和復雜型數(shù)據(jù)綁定。適用于簡單型數(shù)據(jù)綁定組件一般有Lable、TextBox等,適用于復雜性數(shù)據(jù)綁定的組件一般有DataGrid、ListBox、ComboBox等。ADO 2.6其實簡單型數(shù)據(jù)綁定和復雜性數(shù)據(jù)綁定并沒有明確的區(qū)分。#t#
簡單型數(shù)據(jù)綁定:
簡單型數(shù)據(jù)綁定一般使用這些組件中的DataBindings屬性的Add方法把DataSet中某一個DataTable中的某一行和組件的某個屬性綁定起來,從而達到顯示數(shù)據(jù)的效果。TextBox組件的數(shù)據(jù)綁定具體實現(xiàn)方法是在代碼清單01后,再添加代碼清單03中ADO 2.6的代碼,代碼清單03中的代碼是把DataSet中的Customers 數(shù)據(jù)表中的"CustomerID"的數(shù)據(jù)和TextBox的Text屬性綁定起來,這樣ADO 2.6就產(chǎn)生了。其他適用于簡單型數(shù)據(jù)綁定組件數(shù)據(jù)綁定的方法類似與此操作: