在T4模板中使用MSBuild属性。

问题描述 投票:5回答:2

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

我想做一些像这样的片段。

Revision: <#=$(Revision)#>

这将导致一个错误。

error CS1056: Compiling transformation: Unexpected character '$'

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

任何帮助都将是非常感激的。

t4 msbuild-4.0
2个回答
0
投票

应该可以通过以下方式传递$(Revision)值 TextTransform命令行-a选项.

在你的模板中添加类似这样的内容。

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

并添加到MsBuild脚本中

    TextTransform -a !!RevisionParameter!$(Revision)

0
投票

你可以使用 ResolveAssemblyReference例如:

Revision: <#=Host.ResolveAssemblyReference("$(Revision)")#>
© www.soinside.com 2019 - 2024. All rights reserved.