使用 TextTransform 实用工具生成文件

TextTransform.exe 是命令行工具,可用于转换文本模板。 当您调用 TextTransform.exe 时,将文本模板文件的名称指定为参数。 TextTransform.exe 调用文本转换引擎并处理文本模板。 TextTransform.exe 通常是从脚本调用。 但是,通常不需要,,因为在 Visual Studio 中执行文本转换或在生成过程。

备注

如果要将文本转换作为生成过程的一部分,请考虑使用 MSBuild 文本转换任务。有关更多信息,请参见生成过程中的代码生成。在安装了 Visual Studio 的计算机中也可以编写可转换文本模板的应用程序或 Visual Studio 扩展。有关更多信息,请参见 使用自定义宿主处理文本模板

TextTransform.exe 位于下面的目录中:

\Program Files\Common Files\Microsoft Shared\TextTemplating\11.0

TextTransform [<options>] <templateName>

参数

参数

说明

templateName

识别您要转换的模板文件的名称。

选项

说明

-out <文件名>

向其写入转换的输出的文件。

-r <assembly>

用于编译和运行文本模板的程序集。

-u <命名空间>

用于编译模板的命名空间。

-I <includedirectory>

包含指定的文本模板中包括的文本模板的目录。

-P <referencepath>

用于搜索文本模板中指定的程序集或搜索使用 -r 选项的目录。

例如,要包含用于 Visual Studio API 的程序集,则使用

-P"%VSSHELLFOLDER%\Common7\IDE\PublicAssemblies"

-dp <processorName>!<className>!<assemblyName|codeBase>

指令处理器的名称、完整类型名和程序集,用于处理文本模板内的自定义指令。

-a [processorName]![directiveName]!<parameterName>!<parameterValue>

警告说明警告
始终键入 “!”标记,因此,即使您省略可选处理器和指令名称。例如: -a !!param!value

为指令处理器指定参数值。 如果仅指定参数名和值,参数将可用于所有指令处理器。 如果指定指令处理器,仅当正在处理指定的指令时,参数才可用。 如果指定指令名称,仅当正在处理指定的指令时参数才可用。

若要访问指令处理器或文本模板中的参数值,请使用 ResolveParameterValue。 在文本模板中,包括模板指令中的 hostspecific 并调用 this.Host上的消息。 例如:

<#@template language="c#" hostspecific="true"#>
[<#= this.Host.ResolveParameterValue("", "", "parameterName") #>]

-h

帮助提供。

相关主题

任务

主题

在 Visual Studio 解决方案中生成文件。

使用 T4 文本模板生成设计时代码

编写指令处理器转换自己的数据源。

自定义 T4 文本转换

写入文本模板化主机,使您能够从自己的应用程序调用文本模板。

使用自定义宿主处理文本模板