我尝试阅读C#ECMA来找出是什么entity但失败了。这是类的实例吗?还是类型+成员?还是代码中的任何单个单词下方都没有显示红色波浪线?
我正在使用Win7,并将VSC#项目设置为.NETFramework4。然后下载SaxonHE9-8-0-7N-setup.exe并安装。然后将saxon9he-api.dll引用到C#项目中,using Saxon.Api;
这是我的program.cs:
static void Main(string[] args)
{
var xslt = new FileInfo(Path.GetFullPath(Path.Combine(Environment.CurrentDirectory.ToString(), @"..\..\..")) + @"\TEST.xslt");
var input = new FileInfo(Path.GetFullPath(Path.Combine(Environment.CurrentDirectory.ToString(), @"..\..\..")) + @"\TEST.xml");
var output = new FileInfo(Path.GetFullPath(Path.Combine(Environment.CurrentDirectory.ToString(), @"..\..\..")) + @"\result.txt");
var processor = new Processor();
var compiler = processor.NewXsltCompiler();
var executable = compiler.Compile(new Uri(xslt.FullName));
var transformer = executable.Load();
var serializer = new Serializer();
FileStream outStream = new FileStream(output.ToString(), FileMode.Create, FileAccess.Write);
serializer.SetOutputStream(outStream);
using (var inputStream = input.OpenRead())
{
transformer.SetInputStream(inputStream, new Uri(Path.GetTempPath()));
transformer.SetParameter(new QName("password"), new XdmAtomicValue("secret"));
transformer.Run(serializer); …Run Code Online (Sandbox Code Playgroud) 我想在 XPath3.1 中使用新功能,例如array和map,这听起来像是一个 googleable 问题,但我尝试了许多示例代码仍然收到错误消息,这是我到目前为止的方法:
<!-- XSLT.xslt -->
<!-- using SaxonHE9-8-0-7 -->
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select="system-property('xsl:version ')"/> <!-- show 3.0 -->
<xsl:copy-of select="system-property('xsl:vendor ')"/> <!-- show Saxonica -->
<xsl:copy-of select="system-property('xsl:xpath-version')"/> <!-- show 3.1 -->
<xsl:copy-of select="system-property('xsl:xsd-version ')"/> <!-- show 1.1 -->
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
因此,它有一个简单,工作代码,可以证明的力量array和map?谢谢!