5

我正在使用 MSBuild 使用 T4 生成一些文件,我想知道是否可以在 T4 模板中引用和使用 MSBuild 属性?

我想做这样的片段:

Revision: <#=$(Revision)#>

这会引发错误:

error CS1056: Compiling transformation: Unexpected character '$'

我不希望将属性包装在自定义 DLL 中并将 C# 类作为 T4 属性引用。

任何帮助将非常感激。

4

2 回答 2

0

应该可以通过TextTransform 命令行 -a option传递 $(Revision) 值。

在您的模板中添加类似这样的内容:

      [<#= this.Host.ResolveParameterValue("", "", "RevisionParameter") #>]

并进入 MsBuild 脚本:

    TextTransform -a !!RevisionParameter!$(Revision)
于 2011-11-01T09:41:02.797 回答
0

您可以使用ResolveAssemblyReference,例如:

Revision: <#=Host.ResolveAssemblyReference("$(Revision)")#>
于 2020-06-08T15:20:16.457 回答