【发布时间】:2014-10-06 02:02:47
【问题描述】:
如何在 Saxon-HE 中使用 XSLT fn:document 函数?我知道.net 可以使用 Xml Resolver 的“EnableDocumentFunction”。如何/在我下面的编码中插入 XmlResolver。
#region "saxon"
public static StringWriter saxonmethod(string sourceFile, Stream XSLT)
{
Processor processor = new Processor();
TextReader stringReader = new StringReader(sourceFile);
XmlTextReader reader2 = new XmlTextReader(stringReader);
reader2.XmlResolver = null;// Load the source document
XdmNode input = processor.NewDocumentBuilder().Build(reader2);
// Create a transformer for the stylesheet.
XsltTransformer transformer = processor.NewXsltCompiler().Compile(XSLT).Load();
transformer.InputXmlResolver = null;
// Set the root node of the source document to be the initial context node
transformer.InitialContextNode = input;
// Create a serializer
StringWriter s = new StringWriter();
Serializer serializer = new Serializer();//serializer.SetOutputWriter(Console.Out);
serializer.SetOutputWriter(s);
// Transform the source XML to System.out.
transformer.Run(serializer);
return s;
}
#endregion
感谢您的提前。萨兰
【问题讨论】: