XSLT 编译器 (xsltc.exe)

XSLT 编译器 (xsltc.exe) 编译 XSLT 样式表并生成程序集。 然后,可以将编译的样式表直接传递到 XslCompiledTransform.Load(Type) 方法中。 无法使用 xsltc.exe生成已签名的程序集。

注释

脚本块仅在 .NET Framework 中受支持。 .NET Core 或 .NET 5 或更高版本 不支持 它们。

Visual Studio 随附 xsltc.exe 工具。 有关详细信息,请参阅 Visual Studio 下载

语法

xsltc [options] [/class:<name>] <sourceFile> [[/class:<name>] <sourceFile>...]  

论点

论点 DESCRIPTION
sourceFile 指定样式表的名称。 样式表必须是本地文件或位于 Intranet 上。

选项

选项 DESCRIPTION
/c[lass]: name 指定以下样式表的类名。 类名称可以是完全限定的名称。

类名默认为样式表的名称。 例如,如果编译样式表 customers.xsl,则默认类名是客户。
/debug[+|-] 指定是否生成调试信息。

指定 +/debug导致编译器生成调试信息并将其放入程序数据库 (PDB) 文件中。 生成的 PDB 文件的名称为 assemblyName.pdb。

指定 -(在不指定 /debug 时生效)将导致不创建任何调试信息。 生成发布程序集。 注意: 在调试模式下编译可能会显著影响 XSLT 性能。
/help 显示该工具的命令语法和选项。
/nologo 禁止显示编译器版权消息。
/platform: string 指定程序集可以运行的平台。 下面介绍了有效的平台值:

x86 将程序集编译成可由 32 位、x86 兼容的公共语言运行库运行

x64 编译你的程序集,使其能够在支持 AMD64 或 EM64T 指令集的计算机上,由 64 位公共语言运行时运行。

Itanium 编译程序集,以便由具有 Itanium 处理器的计算机上的 64 位公共语言运行时运行。

anycpu 编译程序集以在任何平台上运行。 这是默认值。
/out: assemblyName 指定输出的程序集的名称。 如果存在多个样式表,则程序集名称默认为主样式表的名称或第一个样式表的名称。

如果样式表包含脚本,脚本将保存到单独的程序集。 脚本程序集名称是从主程序集名称生成的。 例如,如果为程序集名称指定了 CustOrders.dll,则第一个脚本程序集将命名为 CustOrders_Script1.dll。
/settings: document+-, script+-, DTD+-, 指定是否允许样式表中的 document() 函数、XSLT 脚本或文档类型定义 (DTD)。

默认行为禁用对 DTD、 document() 函数和脚本的支持。
@ file 允许指定包含编译器选项的文件。
? 显示该工具的命令语法和选项。

注解

XSLT 解决方案可以包含多个样式表模块。 xsltc.exe 工具从样式表生成程序集。 然后,可以将程序集传递到 XslCompiledTransform.Load(Type) 方法中。 这有助于降低某些 XSLT 部署方案中的性能成本。

注释

还必须将编译的程序集作为引用包含在应用程序中。

xsltc.exe 工具不会验证类(/class:name)或程序集(/out:assemblyName)名称。 如果名称无效,公共语言运行时将引发错误。

例子

以下命令编译样式表并创建名为 booksort.dll的程序集。

xsltc booksort.xsl  

以下命令编译样式表,并分别创建名为 booksort.dll 和 booksort.pdb 的程序集和 PDB 文件。

xsltc booksort.xsl /debug  

以下命令编译一个样式表,其中包含一个 msxsl:script 元素,并创建两个名为 calc.dll 和 calc_Script1.dll的程序集。

xsltc /settings:script+ calc.xsl  

以下命令启用 DTD 处理和脚本支持,并创建两个名为 myTest.dll 和 myTest_Script1.dll的程序集。

xsltc /settings:DTD+,script+ /out:myTest calc.xsl  

以下命令编译两个样式表模块,并创建一个名为 booksort.dll的程序集。

xsltc booksort.xsl output.xsl  

另请参阅