C# 动态包含另一个t4模板

C# 动态包含另一个t4模板,c#,t4,C#,T4,我正在使用t4模板,并面临以下问题。我需要在我的模板中包含另一个现有t4模板。但我有一个限制:包含的t4模板文件的名称是动态生成的。 我为此使用了include指令,但它不起作用 <#@ include file="\Helpers\<# FileName.tt#>" #> 动态生成属性文件名的值为了使用参数,您需要设置msbuild属性(例如在BeforeBuild目标中)或将其作为/p:TargetPath=“[path]”传递给msbuild,并且您可以将其与以下

我正在使用t4模板,并面临以下问题。我需要在我的模板中包含另一个现有t4模板。但我有一个限制:包含的t4模板文件的名称是动态生成的。 我为此使用了
include
指令,但它不起作用

<#@ include file="\Helpers\<# FileName.tt#>" #>

动态生成属性
文件名
的值

为了使用参数,您需要设置msbuild属性(例如在BeforeBuild目标中)或将其作为/p:TargetPath=“[path]”传递给msbuild,并且您可以将其与以下内容一起使用:


(更多信息请参见此处)

此外,您可以将t4模板配置为在每个生成上运行


真的

。。。如本文所述:

要使用参数,您需要设置msbuild属性(例如在BeforeBuild目标中)或将其作为/p:TargetPath=“[path]”传递给msbuild,并且可以将它们与以下内容一起使用:


(更多信息请参见此处)

此外,您可以将t4模板配置为在每个生成上运行


真的

。。。正如这里提到的:

为什么要生成T4?我想不出任何场景中附加步骤有意义。@Toxantron,我有一些t4模板文件。根据具体情况,我应该在模板中包含其中一个。但哪一个将被包括由配置文件决定。您试过了吗<代码>是的,但是没有帮助。我认为这里没有使用include的方法,因为在我看来,include是在编译时解析的。它是运行时模板吗?为什么要生成T4?我想不出任何场景中附加步骤有意义。@Toxantron,我有一些t4模板文件。根据具体情况,我应该在模板中包含其中一个。但哪一个将被包括由配置文件决定。您试过了吗<代码>是的,但是没有帮助。我认为这里没有使用include的方法,因为在我看来,include是在编译时解析的。它是运行时模板吗?
 An unexpected start or end tag was found within a block. Make sure that you did not mis-type a start or end tag, and that you do not have any nested blocks in the template.