如何在visual studio 2012中为C#生成T4(运行时)模板设置文件扩展名
我有一个T4模板,以如何在visual studio 2012中为C#生成T4(运行时)模板设置文件扩展名,c#,visual-studio-2012,resharper,t4,C#,Visual Studio 2012,Resharper,T4,我有一个T4模板,以 <#@ template language="C#" #> <#@ output extension=".Generated.cs" #> <#@ assembly name="System.Core" #> <#@ import namespace="System.Linq" #> <#@ import namespace="System.Text" #> <#@ import namespace="Sys
<#@ template language="C#" #>
<#@ output extension=".Generated.cs" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
因此,我可以告诉Resharper忽略所有
.Generated.cs
文件最简单的方法:将模板命名为ExportForNcGeneration.Generated.tt
稍微复杂一点:手动修改.csproj文件
这种方法的问题是,如果您在VS中更改.tt文件的名称,它将还原生成的文件的名称。您确定您将T4用于
文本模板
(使用TextTemplatingFileGenerator
作为自定义工具),而不是T4用于运行时文本模板
(使用TextTemplatingFilePreprocessor
Custom Tool)?抱歉,是的,它是T4,用于运行时。我认为在这种情况下无法自定义输出文件的名称:(您不能按照建议命名模板,因为它将尝试生成类名“ExportForNcGeneration.Generated.tt”,并使编译器崩溃:)
<#@ output extension=".Generated.cs" #>
ExportForNcGeneration.Generated.cs