帮助SQl Server和XML?

时间:2010-08-10 18:48:02

标签: sql-server xml vb.net

我向sql server发出了一个查询请求,其中“FOR XML AUTO,type,elements,root('root')”附加在我的查询末尾。我发布了一个da.Fill(ds)[到一个数据集],没有任何问题。现在我有了数据,我想把它转换成HTML。

所以我用过:

 Dim XMLString As String = ds.GetXml() 

将我的数据转换为字符串。这是我的问题的确定!!

然后我去了:

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

将xsl(在我的项目中)和xmlstring传递给sub。

然后我的代码如下:

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

2 个答案:

答案 0 :(得分:0)

TEO.xslt在任何地方使用xsl:strip-space吗?如果是这样可能是你的问题。

您可以在此处阅读原因:http://msdn.microsoft.com/en-us/library/ms163434.aspx

答案 1 :(得分:0)

是的,我有“

当我删除它时,我没有上述问题,但我也没有得到任何转换。

当我在我的批次路由中尝试此操作时,如下所示: 将XMLString变暗为string = ds.GetXML() 将xsl1调暗为新的XSLCOmpliledTransform() xsl1.Load(Ctype(ServerMapPath(“〜/ TEO.xslt,String)&lt; =这是我的项目xslt xsl1.Transform(XMLString,“C:.... \ testteo.HTML)&lt; =错误

我收到一个无效的URI:Uri方案太长了。

我的数据集dat如下所示: .root..t1..TEO_SEQ_NO.1。/ TEO_SEQ_NO。这似乎是正确的数据。 谢谢, Hlpearl