在我的VS 2013项目中,我添加了一个名为Foo.tt
的T4模板文件,其内容如下:
<#@ template language="C#" #>
<#@ output extension=".config"#>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
每次保存.tt
文件或右键点击选定的Run Custom Tool
时,输出的文件都是Foo.cs
,而不是我期望的Foo.config
。< / p>
为什么没有使用.config扩展属性?
答案 0 :(得分:1)
我猜你想要一个“文本模板”,但是创建了一个“运行时文本模板”。后者总是会创建代码,当然是.cs
。
有两种T4模板:
.tt
- &gt;文件。.tt
- &gt;代码(即.cs
)可以在运行时使用 来获取从模板文本创建的字符串。后者ignores output extension
。