如何在指定命名空间的同时自动为每个构建构建T4模板?

时间:2017-07-03 15:30:59

标签: c# .net msbuild t4

我有一个T4模板,它生成一个可以在运行时用来构建文档的类。在模板文件的属性中,自定义工具设置为“TextTemplatingFilePreprocessor”,我还为自定义工具命名空间属性设置了自定义命名空间。

如果我右键单击模板并选择“运行自定义工具”,或者如果我选择构建 - >转换所有T4模板,则代码会正确生成。但是,我一直在尝试使用Microsoft.TextTemplating.targets构建任务在构建时自动生成模板,如下所述:https://docs.microsoft.com/en-us/visualstudio/modeling/design-time-code-generation-by-using-t4-text-templates#Regenerating。当我这样做时,文件被重新生成,但它忽略了自定义工具命名空间。

那么:如何在指定命名空间的同时自动为每个构建构建T4模板?

1 个答案:

答案 0 :(得分:0)

最终弄明白:解决方案是使用<CustomToolNamespace>标记替换csproj文件中的<ClassNamespace>标记。