0

我在一个或多或少传统的 XML 文档上使用 VBScript 下的 msxml 6.0 转换方法。设置是这样的:

Set objXSL = CreateObject("MSXML2.FreeThreadedDOMDocument.6.0") 
objXSL.setProperty "AllowDocumentFunction",True
objXSL.setProperty "AllowXsltScript",True
objXSL.resolveExternals = True
objXSL.async = false
objXSL.load(Server.MapPath("MyStylesheet.xsl"))
Set xslTemplate = CreateObject("MSXML2.XSLTemplate.6.0") 
xslTemplate.setProperty "AllowXsltScript", True
xslTemplate.stylesheet = objXSL
Set xslProc = xslTemplate.createProcessor()

然后,我发出 transform() 方法命令,该命令需要输入和输出缓冲区,例如,

xslProc.input = objXmlDomInput
xslProc.output = objXmlDomOutput
xslProc.transform()

有没有办法告诉 transform() 为源和目标使用相同的缓冲区?现在的方式,你的内存占用大约是两倍。这给我带来了麻烦,结果是一个半大的 DOM。必须支持两个对象似乎是不优雅的,当 Input 一个基本上是 transform() 完成后的一次性使用时。谢谢 Stackoverflow 的读者!

4

0 回答 0