溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ADO.NET能用來(lái)做什么

發(fā)布時(shí)間:2021-06-17 09:30:24 來(lái)源:億速云 閱讀:141 作者:chen 欄目:編程語(yǔ)言

本篇內(nèi)容主要講解“ADO.NET能用來(lái)做什么”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“ADO.NET能用來(lái)做什么”吧!

學(xué)習(xí)每門技術(shù)都是由淺入深,這里我們就從ADO.NET入門開始吧,希望可以給大家開個(gè)好頭。ADO.NET提供了一個(gè)統(tǒng)一的編程模式和一組公用的類來(lái)進(jìn)行任何類型的數(shù)據(jù)訪問(wèn),而不管你用何種語(yǔ)言來(lái)開發(fā)代碼。ADO.NET是全新的,但又與ADO盡可能保持一致,它使編程模式從一個(gè)客戶端/服務(wù)器、基于連接的模式轉(zhuǎn)變到了一個(gè)新的模式,這個(gè)新模式可以讓斷開的前端下載記錄、離線工作、然后重新連接來(lái)提交變化。ADO.NET是WinForms應(yīng)用程序、ASP.NET應(yīng)用程序和Web Services的一個(gè)共有的特點(diǎn)。其功能可以跨LAN和Internet連接來(lái)實(shí)現(xiàn),可以在有狀態(tài)(stateful)和無(wú)狀態(tài)(stateless)情況下實(shí)現(xiàn)。

這就意味著,作為一個(gè)共有的技術(shù),ADO.NET的對(duì)象在所有可能的環(huán)境中并不是同等強(qiáng)大的。用ADO.NET為一個(gè)富客戶端(rich client)構(gòu)建一個(gè)數(shù)據(jù)層同為一個(gè)客戶端通常是共享的和重要的實(shí)體(如Web服務(wù)器)的Web應(yīng)用程序構(gòu)建一個(gè)數(shù)據(jù)層并不一樣。

如果你從前是個(gè)ADO開發(fā)人員,現(xiàn)在已經(jīng)用ADO.NET了,那么你可能把數(shù)據(jù)訪問(wèn)看做是一個(gè)***的對(duì)象,如Recordset。我們很自然地會(huì)將舊的對(duì)象模式同新的對(duì)象模式匹配起來(lái),并將現(xiàn)有的方法用于.NET應(yīng)用程序。然而,在ADO環(huán)境中的某些好的方法在轉(zhuǎn)換到ADO.NET環(huán)境時(shí)就可能并不強(qiáng)大了。而且,看起來(lái)很微不足道的ADO.NET對(duì)象模式的復(fù)雜性可能會(huì)導(dǎo)致很糟糕的編程情況、不理想的代碼、甚至是功能不能實(shí)現(xiàn)。我將講述在 ADO.NET編程中可能會(huì)給你帶來(lái)麻煩的10個(gè)方面,并提供技巧和解決方法來(lái)避免它們。

ADO.NET入門運(yùn)用字符串來(lái)串行化擴(kuò)展的屬性

幾個(gè)ADO.NET對(duì)象都擁有一個(gè)叫做ExtendedProperties的集合。該屬性就像收集貨物(cargo collection)一樣,可以用來(lái)存儲(chǔ)任何類型的用戶信息。DataSet、DataTable和DataColumn就是可以提供該數(shù)據(jù)成員的類。ADO.net通過(guò)運(yùn)用PropertyCollection類封裝的一個(gè)哈希表來(lái)實(shí)現(xiàn)這個(gè)ExtendedProperties屬性。你可以用Add方法將數(shù)據(jù)插入到集合中。Add方法使用了兩個(gè)參數(shù)來(lái)保存數(shù)據(jù)——key和value。該方法的原形將參數(shù)定義為通用的對(duì)象類型,你可以存儲(chǔ)任何類型的信息。然而,在特殊情況下,你應(yīng)該特別注意那些被保存為擴(kuò)展屬性的對(duì)象的類型。

如果你想將包含擴(kuò)展屬性的ADO.NET對(duì)象串行化到XML,***只用字符串。如果不行,你必須對(duì)ADO.NET的內(nèi)在的serializer的行為采取對(duì)策。

當(dāng)ADO.NET將一個(gè)DataSet對(duì)象保存到XML時(shí),ExtendedProperties 集合的內(nèi)容就被串行化到內(nèi)存中了,但大概是出于性能的原因,ADO.NET運(yùn)用了ToString方法,而不是XML serializer來(lái)實(shí)現(xiàn)串行化。更重要的是,當(dāng)ADO.NET對(duì)象被讀回并復(fù)原時(shí),ExtendedProperties集合包含的是對(duì)象的字符串表現(xiàn)形式,而不是對(duì)象本身。

到此,相信大家對(duì)“ADO.NET能用來(lái)做什么”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI