2010-08-10 77 views
1

我向查詢請求追加了「FOR XML AUTO,type,elements,root('root')」追加到sql server的查詢。我發出一個da.Fill(ds)[數據集],它沒有任何問題。現在我有了這些數據,我想把它轉換成HTML。幫助SQl服務器和XML?

所以我用:

Dim XMLString As String = ds.GetXml() 

,我的數據轉換成字符串。這是我的問題!

然後我去:

strHTMLDetails = GetHtml(Server.MapPath("~/TEO.xslt"), XMLString) 

其經過XSL(我的項目內)和的xmlString子。

然後我的代碼如下:

Dim stream As New MemoryStream(ASCIIEncoding.Default.GetBytes(XMLString) 
Dim document As New XPathDocument(stream) 
Dim writer As New StringWriter() 
transform.Load(xsltPath) 
transform.Transform(document, Nothing, writer)  <====== Here's my error: 

空格不能從已經被加載輸入文檔剝離。改爲將輸入文檔作爲XmlReader提供。

我不明白什麼是錯的或如何解決它。請幫忙?

謝謝 hlpearl

+0

正在變換一個XslCompiledTransform對象嗎? – 2010-08-10 18:56:27

回答

0

是的,我有「

當我刪除它,我沒有上述問題,但我還沒有得到任何改造

當我在我的批處理試驗中嘗試這個如下: Dim XMLString as string = ds.GetXML()Dim xsl1 as new XSLCOmpliledTransform() xsl1.Load(Ctype(ServerMapPath(「〜/ TEO.xslt,String )< =這是我的項目xslt xsl1.Transform(XMLString,「C:.... \ testteo.HTML)< =錯誤

我得到一個無效的URI:Uri方案太長。

我的數據dat如下所示: .root..t1..TEO_SEQ_NO.1。/ TEO_SEQ_NO。這似乎是正確的數據。 謝謝, Hlpearl