项目模板中的T4和C#生成

18
我想在Visual Studio项目模板中添加T4模板,但我不希望在项目添加完成后看到“tt”文件。简而言之,我想生成一个 .cs 文件,然后完全丢弃 .tt 文件。代码生成只会在将项添加到项目时发生一次。
我已经成功将 .tt 文件添加到项模板中,但我不知道如何在代码生成后进行丢弃。
谢谢 Laurent

4
如果这确实是一个一次性的过程,为什么不添加tt文件以生成cs文件,然后复制生成的文件,删除tt文件,再将复制的vs文件重新添加到项目中呢?tt会在磁盘上创建实际的csv文件。 - Brocco
当项目添加新项时,这是一次性事件,意味着“每次添加新项到项目中”。我需要这个步骤自动发生。 - LBugnion
明白了,您能详细说明一下原因吗?编译器会忽略tt文件,所以这个请求似乎纯粹是为了美观。那么有没有一个实用程序项目可以通过tt来处理文件呢? - Brocco
1
这是针对MVVM Light的,它是我创建的一个开源项目。它在xaml/c#社区广泛使用,包括许多不一定是专家的开发人员。将.tt文件添加到项目中会带来一些混淆,我想避免这种情况。我不需要额外的支持请求电子邮件询问我该如何处理此文件。 - LBugnion
4
明白了,我喜欢并在我的 WP 应用程序中使用那个库。我建议为你做的转换创建一个项目,并将其排除在你的开源存储库之外,因为它似乎是你想要使用但不想分享(为了可读性)的个人实用程序。你可以把它看作是类似于文本编辑器中的宏的工具。 - Brocco
如果你的软件带有 Visual Studio 扩展,那么如果你要发布代码(或计划这样做),而不仅仅是模板,你可以使用 IWizard 接口:https://msdn.microsoft.com/zh-cn/library/ms185301.aspx - Simon Mourier
1个回答

0

使用 tangible 的工具 这里 可以实现。虽然不是最理想的方法,但通过一些技巧,您可以从一个项目中生成包含模板的文件,并将其导入到另一个项目中,使目标项目摆脱模板。

另一种方法是生成预处理模板,然后修改生成的文件以创建定制目标输出。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接