你可能使用过 Code Smith ,或者动软代码生成器。但是,在 VS2010 中就有一个强大的代码生成器,你使用过吗?
它位于你的 C:\Program Files\Common Files\microsoft shared\TextTemplating\10.0 文件夹下。如图所示:
不过,我们一般不直接使用这个工具,而是通过 VS2010 来使用它。
在 VS2010 中创建一个控制台项目,然后,选择增加一个文本模板文件,注意文件的扩展名为 .tt,如图所示:
选择增加后,会看到一个提示框,这是在提示你,模板可能有风险。这是我们自己做的,当然没有风险。
现在,你会看到默认情况下,这个模板文件中的内容
2 < #@ output extension = " .txt " # >
而且,你会在解决方案管理器中看到对应的生成文件 TextTemplate1.txt ,这个名字来自于你的模板文件,只不过将扩展名更新为了 txt。
更新的原因是模板中的第二行说明。下面我们将扩展名更改为 .html
2 < #@ output extension = " .html " # >
保存后,txt 文件不见啦,你会看到一个名为 TextTemplate1.htm 的文件。
打开你的 TextTemplate1.html ,会看到里面没有内容。
下面我们写一个简单的模板,在模板文件中增加如下的内容。
2 < #@ output extension = " .html " # >
3
4 < html >
5 < body >
6 < h1 > 模板示例 </ h2 >
7 < table >
8 < # for ( int i = 0 ; i < 3 ; i ++ )
9 { # >
10 < tr >< td > Name < # = i # > </ td >
11 < td > Value < # = i * i # > </ td > </ tr >
12 < # } # >
13 </ table >
14 </ body >
15 </ html >
存盘!然后,看看你的文件中有什么!
2 < body >
3 < h1 > 模板示例 </ h2 >
4 < table >
5 < tr >< td > Name 0 </ td >
6 < td > Value 0 </ td > </ tr >
7 < tr >< td > Name 1 </ td >
8 < td > Value 1 </ td > </ tr >
9 < tr >< td > Name 2 </ td >
10 < td > Value 4 </ td > </ tr >
11 </ table >
12 </ body >
13 </ html >
太震撼啦,还能做什么呢?
你可以先看一看这篇文章,scott 的 T4 (Text Template Transformation Toolkit) Code Generation - Best Kept Visual Studio Secret
下一次,我将详细介绍 T4 相关的工具,使用,常见问题。