技术开发 频道

告别重复!巧用Visual Studio代码生成器

  【IT168 技术】Visual Studio 2010中,内置了一个叫Text Template Transformation Toolkit的代码生成器,这会大大方便开发者的开发代码的速度。本文将讲解如何在Visual Studio 2010中使用Text Template Transformation Toolkit生成代码,读者在学习了本文后,应该可以触类旁通,在编程中充分运用Text Template Transformation Toolkit去提高编码效率。

  介绍及准备工作

  曾几何时,作为程序员的你,经常都面对这样的情景:要创建一个类,类中的属性对应数据库中表的各列,还有经常书写象增删改查等重复代码。在Visual Studio 2010中,已经内置了一个免费的代码生成工具Text Template Transformation Toolkit(简称T4),可以在你设置好代码生成模版后,自动生成相关的代码。

  本文以C#为例,演示了如何创建一个由T4模版生成的类,这个类中包含了数据库中相关表的每一个属性,本文的代码可以在这里下载(http://authors.aspalliance.com/vvarallo/CodeGeneratorT4.zip)。同时,开发者必须先下载和安装样例数据库文件AdventureWorks。接者再创建一个登陆SQL SERVER的用户名和密码,我们在这里都将两者设置为aspalliacne。下面我们开始学习一步步实现使用T4生成代码。

  步骤1 创建代码生成器工程

  1)启动visual studio 2010。

  2)选择新建工程项目,在工程模版列表中,选择Class Library类库,将工程项目名命名为CodeGeneratorT4,点完成按钮。

  3)在刚建立的项目中,我们删除系统默认建立的class1.cs文件。

  步骤2 创建用于生成类文件的文本模版

  1)鼠标右键项目,在弹出的菜单中,选择新增项目,其中选择Text Template,并将其命名为BusinesObject.tt,如下图:

  2)打开这个BusinessObject.tt文件,其中会收到Visual Studio的警告,这个可以点继续按钮忽略之。

  3)在这个文件中,会发现有两行文件

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

  其中,以<#@为标记的我们称之为指令,它们指定了如何生成相关的代码,完整的指令可以在http://msdn.microsoft.com/en-us/library/bb126421.aspx中找到,其中的debug属性指定了是否允许调试模版,language属性指定了使用的编程语言为c#,当然你也可以指定为VB.NET。参数extension指定了由模版生成的文件的后缀,这里我们因为要生成C#文件,所以这里修改为“.cs”。

0
相关文章