我正在使用 MSBuild 使用 T4 生成一些文件,我想知道是否可以在 T4 模板中引用和使用 MSBuild 属性?
我想做这样的片段:
Revision: <#=$(Revision)#>
这会引发错误:
error CS1056: Compiling transformation: Unexpected character '$'
我不希望将属性包装在自定义 DLL 中并将 C# 类作为 T4 属性引用。
任何帮助将非常感激。
我正在使用 MSBuild 使用 T4 生成一些文件,我想知道是否可以在 T4 模板中引用和使用 MSBuild 属性?
我想做这样的片段:
Revision: <#=$(Revision)#>
这会引发错误:
error CS1056: Compiling transformation: Unexpected character '$'
我不希望将属性包装在自定义 DLL 中并将 C# 类作为 T4 属性引用。
任何帮助将非常感激。
应该可以通过TextTransform 命令行 -a option传递 $(Revision) 值。
在您的模板中添加类似这样的内容:
[<#= this.Host.ResolveParameterValue("", "", "RevisionParameter") #>]
并进入 MsBuild 脚本:
TextTransform -a !!RevisionParameter!$(Revision)
您可以使用ResolveAssemblyReference
,例如:
Revision: <#=Host.ResolveAssemblyReference("$(Revision)")#>