如何指定T4文件是否应该产生任何输出

时间:2010-02-14 22:13:41

标签: visual-studio split t4 dto multiple-files

我使用T4生成一些DTO类+映射器。

我将文件拆分为多个可重复使用的位(其中一些包含常用方法,其他一些常用程序),并将它们包含在将产生输出的T4模板中 - 这一切都很好。

我的问题是,每次我对它们进行更改时,可重复使用的.tt文件会尝试生成自己的输出并失败(因为它们会耦合到其他一些.tt文件),这很简单。

我很确定我在某处看到某些指令指定给定文件不应该尝试生成任何输出,但我似乎无法追溯它。

任何帮助表示赞赏!

4 个答案:

答案 0 :(得分:7)

您可以指定无效扩展名以禁止模板输出,例如:

<#@ output extension="\n" #>

答案 1 :(得分:4)

在要禁止输出的T4文件的属性(选择文件并按F4)中,清除“自定义工具”条目。

答案 2 :(得分:4)

我没有足够的'StackOverflow street cred'来回复Stanislav Kniazev的答案,所以必须在这里发布我自己的。感谢Stanislav Kniazev的领导。

以下工作;但如果您使用的是T4语法荧光笔(如Tangible T4),您会发现它会突出显示。

  

&lt;#@ output extension =“\ n”#&gt;

所以我发现将扩展名设置为不像这样的转义字符:

  

&lt;#@ output extension =“”#&gt;

然后在代码部分以编程方式设置文件扩展名,如下所示:

  

Host.SetFileExtension( “\ n”);

然后恢复T4突出显示。

答案 3 :(得分:1)

将它们重命名为.ttinclude,看看这是怎么回事....