我正在使用 xslt 3.0 saxon-HE 9.8 库将 xml 转换为 html。在 c# 代码中使用它。我在输入中传递 xml 和 xslt 文件路径以使其转换并获得输出。任何人都可以让我知道如何将 xml 作为字符串传递,并将 xslt 作为字符串传递给 c# 代码中的输入以进行处理。下面是我的代码。public static string Transform_XML(string param, string inputfile, string xsltfilename) { var xslt = new FileInfo(xsltfilename); var input = new FileInfo(inputfile); // Compile stylesheet var processor = new Processor(); var compiler = processor.NewXsltCompiler(); var executable = compiler.Compile(new Uri(xslt.FullName)); XPathDocument doc = new XPathDocument(new StringReader(param)); DocumentBuilder db = processor.NewDocumentBuilder(); XdmNode xml; using (XmlReader xr = XmlReader.Create(new StringReader(param))) { xml = db.Build(xr); } // Do transformation to a destination var destination = new DomDestination(); using (var inputStream = input.OpenRead()) { var transformer = executable.Load(); transformer.SetParameter(new QName("", "", "user_entry"), xml); transformer.SetInputStream(inputStream, new Uri(input.DirectoryName)); transformer.Run(destination); } return destination.XmlDocument.InnerXml.ToString(); }想要将 xml 和 xslt 作为字符串而不是文件路径传递。
添加回答
举报
0/150
提交
取消