用XslTransform轉(zhuǎn)換數(shù)據(jù)
發(fā)表時(shí)間:2024-02-21 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]通過(guò)進(jìn)行XSLT轉(zhuǎn)換,XslTransform類(lèi)可以讓你在.NET應(yīng)用程序中運(yùn)用XML數(shù)據(jù)。你可以在System.Xml.Xsl名字空間中找到XslTransform。你可以用XslTransform轉(zhuǎn)換存儲(chǔ)在XmlDataDocument中的關(guān)系數(shù)據(jù)。XmlDataDocument派生于XmlD...
通過(guò)進(jìn)行XSLT轉(zhuǎn)換,XslTransform類(lèi)可以讓你在.NET應(yīng)用程序中運(yùn)用XML數(shù)據(jù)。你可以在System.Xml.Xsl名字空間中找到XslTransform。
你可以用XslTransform轉(zhuǎn)換存儲(chǔ)在XmlDataDocument中的關(guān)系數(shù)據(jù)。XmlDataDocument派生于XmlDocument。通過(guò)讓這個(gè)類(lèi)與一個(gè)ADO.NET DataSet對(duì)象同步,你就可以以XML格式存儲(chǔ)關(guān)系數(shù)據(jù)。當(dāng)你同步你的DataSet和XmlDataDocument對(duì)象時(shí),任意一個(gè)對(duì)象中存儲(chǔ)的根本數(shù)據(jù)所發(fā)生的變化都可以反映在另一個(gè)對(duì)象中。這就可以讓你運(yùn)用XSLT和Xpath——以及其它的ADO.NET和與XML相關(guān)的服務(wù)——來(lái)讀取和操作根本數(shù)據(jù)。
比如說(shuō),你想運(yùn)用XmlDataDocument對(duì)一個(gè)data set中的關(guān)系數(shù)據(jù)進(jìn)行XSLT轉(zhuǎn)換。這就需要給一個(gè)對(duì)象填充數(shù)據(jù)。一旦填充了數(shù)據(jù),你就可以用三種方式來(lái)同步data set和XmlDataDocument。第一種方式,你可以加載一個(gè)XML文件到一個(gè)XmlDataDocument對(duì)象中,然后訪(fǎng)問(wèn)它的DataSet屬性。在運(yùn)用這個(gè)對(duì)象讀取數(shù)據(jù)前,設(shè)置data set的schema,使表和列的名字與XML元素的那些名字相匹配。記住schemas是大小寫(xiě)敏感的。
第二種方式,你可以創(chuàng)建一個(gè)data set,將一個(gè)schema用于它,然后加載你的XML文件到XmlDataDocument中,使其與data set同步。這種方法在處理關(guān)系數(shù)據(jù)時(shí)會(huì)很有效。根本的XML文件可以很大,但當(dāng)你讓它與DataSet的關(guān)系視圖同步時(shí),你只提供了與它預(yù)先設(shè)置的schema相應(yīng)的元素。
第三種方式,你可以簡(jiǎn)單地同步一個(gè)現(xiàn)有的data set和一個(gè)新的XmlDataDocument:DataSet dsMyDataSet = new DataSet();
// Include code to populate DataSet here
XmlDataDocument xmlddMyXmlDataDocument = new
XmlDataDocument(dsMyDataSet);