看起来每个人都说如果你使用XslTransform,你会先调用Load来加载样式表,然后调用Transform来转换它.但是我有以下XML文件:
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="some_stylesheet.xsl" ?>
....
</xml>
Run Code Online (Sandbox Code Playgroud)
我想首先加载xml,找到样式表节点,然后调用Load来加载样式表,还是有另一种方法呢?
<? ... ?>是处理指令(PI),因此<?xml-stylesheet ... ?>提示如何转换xml.但这不会自动发生.对这些指令的解释取决于处理器.如何处理这些信息取决于您的要求:
您可以通过XmlDocument,XDocument,...加载您的xml,PI将被忽略.您可以根据需要使用xml:按原样使用它,通过您选择的任何xsl转换进行转换,或者检索hrefPI 的-Attribute并使用该转换.
回到原来的问题:如果您希望通过给定的XSLT转换xml,那么工作流程就像您预期的那样: