VS2010 中的代码生成器 T4 - Text Template Transformation Toolkit

你可能使用过 Code Smith ,或者动软代码生成器。但是,在 VS2010 中就有一个强大的代码生成器,你使用过吗?

它位于你的 C:\Program Files\Common Files\microsoft shared\TextTemplating\10.0 文件夹下。如图所示:

 

 

不过,我们一般不直接使用这个工具,而是通过 VS2010 来使用它。

在 VS2010 中创建一个控制台项目,然后,选择增加一个文本模板文件,注意文件的扩展名为 .tt,如图所示:

 

 

选择增加后,会看到一个提示框,这是在提示你,模板可能有风险。这是我们自己做的,当然没有风险。

 

现在,你会看到默认情况下,这个模板文件中的内容

 

1  < #@ template debug = " false "  hostspecific = " false "  language = " C# "  # >
2  < #@ output extension = " .txt "  # >

 

 

而且,你会在解决方案管理器中看到对应的生成文件 TextTemplate1.txt ,这个名字来自于你的模板文件,只不过将扩展名更新为了 txt。

更新的原因是模板中的第二行说明。下面我们将扩展名更改为 .html

 

1  < #@ template debug = " false "  hostspecific = " false "  language = " C# "  # >
2  < #@ output extension = " .html "  # >

 

保存后,txt 文件不见啦,你会看到一个名为 TextTemplate1.htm 的文件。

打开你的  TextTemplate1.html  ,会看到里面没有内容。

下面我们写一个简单的模板,在模板文件中增加如下的内容。

 

 1  < #@ template debug = " false "  hostspecific = " false "  language = " C# "  # >
 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 >

 

 

存盘!然后,看看你的文件中有什么!

 

 1  < 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 相关的工具,使用,常见问题。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NET爱好者的福音来啦! Dot Net代码生成器 - NET代码生成利器 - DotNet代码生成器  基于.net framework 2.0 的代码生成器,功能强大,操作灵活,可以生成任何一种代码文件。提供了数据源、模板、另存为、工具、数据扩展5种插件接口。   1、自定义模板。目前只有一个基础模板,是基于XML配置、字符串替换的,不过该模板支持动态调用代码文件进行编译,对要生成的对象进行预处理,以达到个人的目的。后期可以寻找其他更优秀的模板引擎,来提高生成效率。   目前该模板下定义了几个模板文件,比如FaibClass.data的,还有YS.ORMapper,还有生成HTML、生成SQL的。   2、数据源。一改以往代码生成器的一惯作风,只是单一的使用Sql或其他数据源,在这个工具里,可以打开PowerDesign文档,也可以打开ERWin或是Visio(尚在研究阶段)。并且提供了强好的表及字段编辑功能,主键、外键、枚举等都可以自定义。   还提供了架构同步功能。   3、工具。可以集成一些工具于CodeBuilder强大的界面管理,可以与CodeBuilder进行协作工作,比如提供对表名字段修改、生成的工具。   4、数据扩展。分别为表及字段进行了扩展,可由个人需要实现该接口,将扩展数据附加于表或字段,生成更丰富的代码。   5、系统托盘。显示托盘时,再次双击CodeBuilder或双击.dsc文件,都会由托盘调入正在后台运行的CodeBuilder。   6、最后在收藏夹提供了一个IE工具栏插件,可将网页添加到CodeBuilder的收藏夹。   7、在线插件安装。可由爱好者提供插件发布,在线共享优秀插件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值