我試圖複製一個XML到相同的XML複製使用XSLT的XML文檔而無需任何更改XML
我使用以下XSLT:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output indent="yes" method="xml"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
如果輸入XML是:
<CatalogRequest>
<RequestFileHeader>
<ClientCode>340000</ClientCode>
<CreateTime>2012-04-11T14:57:03.357</CreateTime>
</RequestFileHeader>
</CatalogRequest>
我得到以下結果爲:
<?xml version="1.0" encoding="Windows-1252"?>
<ROOT>
<CatalogRequest>
<RequestFileHeader>
<ClientCode>340000</ClientCode>
<CreateTime>2012-04-11T14:57:03.357</CreateTime>
</RequestFileHeader>
</CatalogRequest>
</ROOT>
關於如何在沒有添加<ROOT>
節點的情況下保留相同的XML的任何想法。
這是被稱爲如下:
Dim Xct As New XslCompiledTransform
Xct.Load(New XmlTextReader(New StreamReader(xsltFileName)))
Dim xal As New XsltArgumentList
Dim helper As New XsltHelper
xal.AddExtensionObject("urn:XsltHelper", helper)
Dim memStream As New MemoryStream
Dim streamWriter As New StreamWriter(memStream, Text.Encoding.GetEncoding(1252))
Xct.Transform(doc, xal, streamWriter)
什麼處理器是你使用?我沒有看到如何通過該XSLT添加ROOT。 – 2012-04-11 19:12:02
請原諒我的無知,這是我第一次用XSLT說話,我怎麼知道我正在使用哪個處理器? – user994258 2012-04-11 19:16:33
您使用什麼代碼來調用XSLT? – 2012-04-11 19:29:20