我有一个通过XElement.Parse()加载的文档,我需要对它应用XSL转换.我该怎么做呢?我知道要做的唯一方法是使用XPathDocument,我知道除了XElement-> String-> StringReader-> Stream-> XPathDocument之外,我无法在两者之间进行转换.
肯定有更好的办法.
在一个相关的问题中,将XPath应用于XElement的最佳方法是什么?
为什么不使用:
xslt.Transform(xelement.CreateReader(), arglist, someTextWriter);
Run Code Online (Sandbox Code Playgroud)
在哪里, xelement 是XElement,xslt 是XslCompiledTransform,arglist 是XsltArgumentList和 someTextWriter 是TextWriter?
换句话说,使用此实例方法:XElement.CreateReader()
或者,您可以使用:
xslt.Transform(xelement.CreateNavigator(null), someXmlWriter);
Run Code Online (Sandbox Code Playgroud)
在这里和这里阅读有关CreateNavigator() 扩展方法的更多信息.
最后一个MSDN链接包含XSLT转换的完整代码示例.
更新:提出了另外一个问题:
在一个相关的问题中,将XPath应用于什么的最佳方法是
XElement什么?
评估XPath表达式的方法有多种 XNode
要么
Extensions.XPathSelectElements()
要么
Extensions.XPathSelectElement()
| 归档时间: |
|
| 查看次数: |
2223 次 |
| 最近记录: |