我有一个基于.NET的应用程序,它接收传入的XML文件。我想使用我拥有的XSL样式表将XML文件转换为HTML。这是我的过程...
有没有人有任何示例代码演示如何实现此目的?谢谢。
答案 0 :(得分:6)
以下是使用 MSDN .NET documentation <的 Transform()
方法的XslCompiledTransform
的一个非常简短的示例/ strong>类是.NET的标准部分(在 System.Xml.Xsl
命名空间中实现):
// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("output.xsl");
// Create the FileStream.
using (FileStream fs = new FileStream(@"c:\data\output.xml", FileMode.Create))
{
// Execute the transformation.
xslt.Transform(new XPathDocument("books.xml"), null, fs);
}
还有待完成的工作是调用浏览器并将流fs
中包含的转换结果传递给它。如果效率很重要,可以选择在文件流上使用内存流。
您应该熟悉 Transform()
*方法的其他重载并选择最适合您的方法
答案 1 :(得分:1)
您实际上并未说过您正在使用哪种XSLT处理器。至少有三种:Microsoft支持XSLT 1.0,而Saxon和XQSharp都支持XSLT 2.0。不幸的是,它们都有不同的API。
答案 2 :(得分:0)
来自某个相关帖子的一个很好的例子 - Passing null to `XslCompiledTransform.Transform` method