更新:November 2007
msxsl:node-set 函数使您能够将结果树片段转换成节点集。 生成的节点集总是包含单个节点并且是树的根节点。
![]() |
---|
XslTransform 类在 .NET Framework 2.0 版 中已过期。 可以使用 XslCompiledTransform 类执行可扩展样式表语言转换 (XSLT) 转换。 有关更多信息,请参见使用 XslCompiledTransform 类和从 XslTransform 类迁移。 |
msxsl:node-set 函数使您能够将结果树片段转换成节点集。 生成的节点集总是包含单个节点并且是树的根节点。
示例
在下面的示例中,$var 是一个变量,它是样式表中的一个节点树。 for-each 语句与 node-set 函数组合使用,允许用户将此节点树作为节点集循环访问。
nodeset.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:user="https://www.contoso.com"
version="1.0">
<xsl:variable name="books">
<book author="Michael Howard">Writing Secure Code</book>
<book author="Michael Kay">XSLT Reference</book>
</xsl:variable>
<xsl:template match="/">
<authors>
<xsl:for-each select="msxsl:node-set($books)/book">
<author><xsl:value-of select="@author"/)</author>
</xsl:for-each>
</authors>
</xsl:template>
</xsl:stylesheet>
输出
转换的输出为
<?xml version="1.0" encoding="utf-8"?>
<authors><author>Michael Howard</author><author>Michael Kay</author></authors>