作者:Abel Avram译者 张善友 来源:InfoQ 酷勤网收集 2008-04-21
根据MSDN的描述:
一个文本模板是一个包含文本块和控制逻辑混合物的文件。当你转换一个文本模板,控制逻辑结合了文本块与模型里的数据来生成一个输出文件。你可以用文本模板来生成文本的输出,例如代码文件和HTML报表。举个例子,用户界面的页面之间的流程控制的模型,例如向导界面,可以通过输入一个文本模板。文本模板可以生成流程控制的代码和配置文件。
一个文本模板有一个文本模板文件作为输入,转换文本模板,并输出一个文本文件的转换过程。转换的过程有两个步骤。第一个步骤是T4的引擎使用文本模板生成一个临时的转换类。 第二个步骤是T4的引擎编译转换类为一个程序集并执行该代码,以产生了输出文本文件。
“Hello World!”的例子看起来是这样的:
<#@ template language="C#" #>
<# Write("Hello World!") #>
文本模板可以包含Visual Basic中或C#代码,如果没有特别指定,C#是默认的语言。 输出指令是用来指定生成的文本文件的类型。有很多种输出文件类型,其中最常用的几种是.html、.txt、.cs、.vb。默认的输出文件类型是.cs。下面是一个如何使用输出指令的例子:
<#@ output extension=".html" #>
Visual Studio对编辑文本模板提供了有限的支持。Clarius咨询公司有一个免费的编辑器,对T4的模板提供了不同部分的颜色区分,智能提示和设计时预览的支持 。 Visual Studio的支持文本模板和转换的过程中的调试,但它不是直接的支持。详细的如何调试可以在MSDN上找到 ,Gareth Jones提供了一个简短的教程。Oleg Sych发表了一篇 关于T4的文章。更全面的MSDN文档在这里。
查看英文原文:Text Template Transformation Toolkit in Visual Studio 2008

