幫助C#菜鳥進(jìn)入SQL/XML開發(fā)
| 責(zé)任編輯:fuxing [ 網(wǎng)人帝國 ]?? 添加時(shí)間:2004-3-16 10:30:06??人氣:1501 【 大 中 小 】 |
XML是個(gè)什么玩意?很多朋友都有一大堆的理論知識(shí),但是如何實(shí)際的應(yīng)用到開發(fā)中去
似乎還是一個(gè)不小的問題。
今天給剛剛接觸的初學(xué)者一個(gè)小例子,希望可以幫助那些剛剛接觸的朋友快速的
理解和使用XML。
首先,說一下我們的例子目的--一讓數(shù)據(jù)庫輸出XML,并且在.net體系下調(diào)用出來。
這個(gè)系統(tǒng)的數(shù)據(jù)層是用SQL server數(shù)據(jù)庫,中間層就用SQL自帶的工具“在 IIS 中配置SQL XML 支持”實(shí)現(xiàn)就可以了。好的,現(xiàn)在我們開始來做了,首先配置讓SQL 輸出 XML :
這個(gè)東西聽起來似乎有些神秘,其實(shí)就是在我們普通的查詢語句后邊增加:FOR XML AUTO 就可以了。
舉一個(gè)例子:
? SELECT TOP 100 topic,name,time
? FROM bbs where [order]=1 ORDER BY [Time] DESC
? FOR XML AUTO
這條語句在SQL的查詢分析器里邊執(zhí)行的結(jié)果,大家會(huì)發(fā)現(xiàn):輸出的已經(jīng)不是我們傳統(tǒng)上概念的表格了,是幾排很長的字符串,內(nèi)容就是我們所需的XML代碼。
這樣第一步,讓SQL輸出XML就完成了。
?
然后開始我們的第2步,讓XML文件可以用web的方式調(diào)用
這條語句調(diào)試成功之后,大家可以建立一個(gè)文件:例如aaa.xml
內(nèi)容如下:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
? <sql:query>
? SELECT TOP 100 topic,name,time
? FROM bbs where [order]=1 ORDER BY [Time] DESC
? FOR XML AUTO
? </sql:query>
</ROOT>
在c:\建立一個(gè)bbb目錄把他放進(jìn)去。
中間的部分就是我們傳統(tǒng)的SQL語句,前后封裝的話就是我們通用的一個(gè)格式。
把這個(gè)文件放到一個(gè)隨意的目錄里邊,然后打開SQL的“在 IIS 中配置 SQL XML 支
持”在需要XML支持的站點(diǎn)建立一個(gè)虛擬目錄,名稱就叫做ccc吧,本地路徑自然是我們的c:\bbb了。
然后點(diǎn)安全性--輸入你SQL得用戶名和密碼,然后是數(shù)據(jù)源,就是你的數(shù)據(jù)庫位置了默認(rèn)的數(shù)據(jù)庫。
然后點(diǎn)設(shè)置,選擇允許模板查詢,然后點(diǎn)虛擬名稱,點(diǎn)新建類型是template名稱就叫
ddd吧,對(duì)應(yīng)的文件就是我們的aaa.xml。
然后在IE里邊打開:http://你的機(jī)器名/ccc/ddd
看到什么了?對(duì),就是你的那個(gè)xml的文件在SQL查詢的時(shí)候輸出的內(nèi)容。
什么沒有輸出?打開你的“Internet 信息服務(wù)(IIS)管理器”,選擇“web擴(kuò)展服
務(wù)”,
然后是把“所有未知的ISAP擴(kuò)展”選擇允許。現(xiàn)在OK了吧?
?
好的,然后就是我們最關(guān)鍵的一步第3步--如何把這個(gè)動(dòng)態(tài)生成的XML文件在VS.net里邊調(diào)用了。
首先我們要建立一個(gè)空的非結(jié)構(gòu)化的dataset1,然后在源代碼里邊在this.dataSet1.Locale = new System.Globalization.CultureInfo("zh-CN");
后邊加一句this.dataSet1.ReadXml("http://你的機(jī)器名/ccc/ddd");
恭喜你,你現(xiàn)在已經(jīng)可以把動(dòng)態(tài)生成的這個(gè)XML文件做為一個(gè)只讀的dataset來使用了。
XML是個(gè)什么玩意?很多朋友都有一大堆的理論知識(shí),但是如何實(shí)際的應(yīng)用到開發(fā)中去
似乎還是一個(gè)不小的問題。
今天給剛剛接觸的初學(xué)者一個(gè)小例子,希望可以幫助那些剛剛接觸的朋友快速的
理解和使用XML。
首先,說一下我們的例子目的--一讓數(shù)據(jù)庫輸出XML,并且在.net體系下調(diào)用出來。
這個(gè)系統(tǒng)的數(shù)據(jù)層是用SQL server數(shù)據(jù)庫,中間層就用SQL自帶的工具“在 IIS 中配置SQL XML 支持”實(shí)現(xiàn)就可以了。好的,現(xiàn)在我們開始來做了,首先配置讓SQL 輸出 XML :
這個(gè)東西聽起來似乎有些神秘,其實(shí)就是在我們普通的查詢語句后邊增加:FOR XML AUTO 就可以了。
舉一個(gè)例子:
? SELECT TOP 100 topic,name,time
? FROM bbs where [order]=1 ORDER BY [Time] DESC
? FOR XML AUTO
這條語句在SQL的查詢分析器里邊執(zhí)行的結(jié)果,大家會(huì)發(fā)現(xiàn):輸出的已經(jīng)不是我們傳統(tǒng)上概念的表格了,是幾排很長的字符串,內(nèi)容就是我們所需的XML代碼。
這樣第一步,讓SQL輸出XML就完成了。
?
然后開始我們的第2步,讓XML文件可以用web的方式調(diào)用
這條語句調(diào)試成功之后,大家可以建立一個(gè)文件:例如aaa.xml
內(nèi)容如下:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
? <sql:query>
? SELECT TOP 100 topic,name,time
? FROM bbs where [order]=1 ORDER BY [Time] DESC
? FOR XML AUTO
? </sql:query>
</ROOT>
在c:\建立一個(gè)bbb目錄把他放進(jìn)去。
中間的部分就是我們傳統(tǒng)的SQL語句,前后封裝的話就是我們通用的一個(gè)格式。
把這個(gè)文件放到一個(gè)隨意的目錄里邊,然后打開SQL的“在 IIS 中配置 SQL XML 支
持”在需要XML支持的站點(diǎn)建立一個(gè)虛擬目錄,名稱就叫做ccc吧,本地路徑自然是我們的c:\bbb了。
然后點(diǎn)安全性--輸入你SQL得用戶名和密碼,然后是數(shù)據(jù)源,就是你的數(shù)據(jù)庫位置了默認(rèn)的數(shù)據(jù)庫。
然后點(diǎn)設(shè)置,選擇允許模板查詢,然后點(diǎn)虛擬名稱,點(diǎn)新建類型是template名稱就叫
ddd吧,對(duì)應(yīng)的文件就是我們的aaa.xml。
然后在IE里邊打開:http://你的機(jī)器名/ccc/ddd
看到什么了?對(duì),就是你的那個(gè)xml的文件在SQL查詢的時(shí)候輸出的內(nèi)容。
什么沒有輸出?打開你的“Internet 信息服務(wù)(IIS)管理器”,選擇“web擴(kuò)展服
務(wù)”,
然后是把“所有未知的ISAP擴(kuò)展”選擇允許。現(xiàn)在OK了吧?
?
好的,然后就是我們最關(guān)鍵的一步第3步--如何把這個(gè)動(dòng)態(tài)生成的XML文件在VS.net里邊調(diào)用了。
首先我們要建立一個(gè)空的非結(jié)構(gòu)化的dataset1,然后在源代碼里邊在this.dataSet1.Locale = new System.Globalization.CultureInfo("zh-CN");
后邊加一句this.dataSet1.ReadXml("http://你的機(jī)器名/ccc/ddd");
恭喜你,你現(xiàn)在已經(jīng)可以把動(dòng)態(tài)生成的這個(gè)XML文件做為一個(gè)只讀的dataset來使用了。
作者:possible_Y(收藏)
來源:csdn.net
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

