Code: Select all
private string TransformXslt(XmlReader document, string stylesheet, object[] extension,
XSLTParams[] xsltArguments)
{
var transform = new XslCompiledTransform(true);
transform.Load(stylesheet, new XsltSettings(true, true), null);
var arguments = new XsltArgumentList();
if (xsltArguments != null)
for (var i = 0; i < xsltArguments.Length; i++)
{
var currentParam = xsltArguments[i];
arguments.AddParam(currentParam.name, "", currentParam.value);
}
for (var index = 0; index < extension.Length; index += 2)
arguments.AddExtensionObject(
extension[index] as string,
extension[index + 1]
);
var output = new StringBuilder();
using (var writer = XmlWriter.Create(output, transform.OutputSettings))
{
transform.Transform(document, arguments, writer);
}
return output.ToString();
}
Die Methode. in
Transform.load(stylesheet, neue xsltsets (true, true), null); Zeile.
Ich sollte Scripting
aktivieren, da in meinem XSL C# Scrips ..