【发布时间】:2012-08-07 19:42:56
【问题描述】:
我正在使用 Visual Studio 2010 TextTemplatingFileGenerator 自定义工具来生成 C# 代码 (.cs),并想知道是否有办法阻止给定的 .tt 在给定的情况下完全生成程序化条件。
我想实现以下目标:
- 有时我想生成一个常规的可编辑类;
- 有时我想生成一对类来表示父子关系,每个类都实现其角色所需的特定规则集。
在回答之前,请记住 不要打算使用 TextTemplatingFilePreprocessor - 我已经探索了它的优点和缺点。虽然适用于其他场景,但不适合我目前的情况。所以我真的很想坚持TextTemplatingFileGenerator。
【问题讨论】:
-
您是想说要根据 .tt 生成的文件或某些参数生成不同的代码吗?
-
给定 3 个类(A、B 和 C)。场景 1 应该只生成 A,场景 2 应该只生成 B 和 C。
-
你如何决定哪个模板生成哪些类?
-
我根据 XML 设置文件来决定我的模板生成
-
如果你深入了解T4工具箱是如何处理Linq2SQL codegen的,你会发现很容易根据一些条件调用不同的TT文件,如果生成的内容不改变,文件不会被修改。
标签: c# templates code-generation conditional t4