在 IIS 中配置 SQL XML 支持 |
發布時間: 2012/8/9 15:43:54 |
首先,說一下我們的例子目的--一讓數據庫輸出XML,并且在.net體系下調用出來。 這個系統的數據層是用SQL server數據庫,中間層就用SQL自帶的工具“在 IIS 中配置SQL XML 支持”實現就可以了。好的,現在我們開始來做了,首先配置讓SQL 輸出 XML : 這個東西聽起來似乎有些神秘,其實就是在我們普通的查詢語句后邊增加:FOR XML AUTO 就可以了。 舉一個例子: SELECT TOP 100 topic,name,time FROM bbs where [order]=1 ORDER BY [Time] DESC FOR XML AUTO 這條語句在SQL的查詢分析器里邊執行的結果,大家會發現:輸出的已經不是我們傳統上概念的表格了,是幾排很長的字符串,內容就是我們所需的XML代碼。 這樣第一步,讓SQL輸出XML就完成了。 然后開始我們的第2步,讓XML文件可以用web的方式調用 這條語句調試成功之后,大家可以建立一個文件:例如aaa.xml 內容如下: <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:\建立一個bbb目錄把他放進去。 中間的部分就是我們傳統的SQL語句,前后封裝的話就是我們通用的一個格式。 把這個文件放到一個隨意的目錄里邊,然后打開SQL的“在 IIS 中配置 SQL XML 支 持”在需要XML支持的站點建立一個虛擬目錄,名稱就叫做ccc吧,本地路徑自然是我們的c:\bbb了。 然后點安全性--輸入你SQL得用戶名和密碼,然后是數據源,就是你的數據庫位置了默認的數據庫。 然后點設置,選擇允許模板查詢,然后點虛擬名稱,點新建類型是template名稱就叫 ddd吧,對應的文件就是我們的aaa.xml。 然后在IE里邊打開:http://你的機器名/ccc/ddd 看到什么了?對,就是你的那個xml的文件在SQL查詢的時候輸出的內容。 什么沒有輸出?打開你的“Internet 信息服務(IIS)管理器”,選擇“web擴展服 務”, 然后是把“所有未知的ISAP擴展”選擇允許。現在OK了吧? 好的,然后就是我們最關鍵的一步第3步--如何把這個動態生成的XML文件在VS.net里邊調用了。 首先我們要建立一個空的非結構化的dataset1,然后在源代碼里邊在this.dataSet1.Locale = new System.Globalization.CultureInfo("zh-CN"); 后邊加一句this.dataSet1.ReadXml("http://你的機器名/ccc/ddd"); 恭喜你,你現在已經可以把動態生成的這個XML文件做為一個只讀的dataset來使用了。 本文出自:億恩科技【www.artduck.net】 |