在T4模板中使用MSBuild属性

时间:2011-07-28 15:07:33

标签: t4 msbuild-4.0

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

我想做这样的代码片段:

Revision: <#=$(Revision)#>

这会引发错误:

error CS1056: Compiling transformation: Unexpected character '$'

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

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

应该可以通过TextTransform command line -a option传递$(修订版)值。

在模板中添加以下内容:

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

进入MsBuild脚本:

    TextTransform -a !!RevisionParameter!$(Revision)

答案 1 :(得分:0)

您可以使用ResolveAssemblyReference,例如:

Revision: <#=Host.ResolveAssemblyReference("$(Revision)")#>