2017-09-06 62 views
0

因此,像是否有可能给T4定制构建错误?

<# 
GiveError("Something is not right"); 
#> 

随后将在其他编译错误中错误列表中显示的编译错误。这可能有助于为程序员提供有关错误的更多具体信息,而不仅仅是在目标文件中退出ErrorGeneratingOutput消息。

+0

我从来没有使用T4,但它是C#所以你应该可以使用“抛出新的异常(”错误“);” – Noren

+0

@Noren:这不会是一个编译错误。 –

+0

您可以生成无法使用'#error'编译指示进行编译的代码 - 您正在执行什么操作?尽管如此,这与完全停止一代并不完全相同。 (我不知道你在找什么......) –

回答

2

我不知道T4产生任何具体的,所以我不能在一个有用的信息停止生成过程方面的帮助,但你会发现它只是为了更好地产生#error编译,如

#error No configuration found for X 

理想情况下,文件的其余部分仍然应该是有效的(或者有更多的错误报告),以便最终得到您想要报告的错误。

这个停止的好处之一是,如果有多个问题需要解决,开发人员可能能够一次性修复它们。缺点是(取决于你生成的)单个配置问题可能会导致数以千计的错误,无益。

相关问题