Microsoft Visual Studio 包含一个称为 T4(文本模板转换工具包的缩写)的代码生成引擎。您或许 已在 Visual Studio 中使用 T4 模板,甚至还不知道这些模板已在后台工作。在本文中,我将简单介绍 T4 模板并说明 ASP.NET MVC 如何使用此项技术。同时我还会为您介绍如何自定义 T4 模板以使用 MVC 框架提高您的日常工作效率。
该模板工具包背后的基本理念是分析输入文件并将其转换为输出文件。输入文件是一个模板(文件扩 展名为 .tt 的文本文件)。输出文件还会包含文本,文本可以是 C# 代码、Visual Basic 代码、Web 窗 体代码、标记或您需要生成的任何其他内容。
观看 T4 演示的最简单方法是在 Visual Studio 中创建一个新项目。我将在本文中生成 C# 代码,因 此您可以使用编译 C# 代码的任何项目类型。打开项目后,右键单击该项目,然后选择“添加”|“新建 项目”。从“添加新项”对话框中选择“文本文件”(Visual Studio 2008 中没有专用于 T4 的项目模 板,但 Visual Studio 2010 中将提供),然后将文件命名为 Simple.tt(确保使用 .tt 扩展名)。将 该文件加载到项目后,您会立即在“解决方案资源管理器”窗口中看到 Simple.cs 文件显示在 Simple.tt 之后。(请参见图 1)。
图 1 T4 模板后面的 C# 文件
Simple.tt 和 Simple.cs 文件一开始都是空文件。如果您右键单击 Simple.tt 文件,然后选择“属 性”,您将看到 Visual Studio 将 TextTemplatingFileGenerator 指定为文件的自定义工具(请参见图 2)。此生成器是 T4 引擎,会将模板文件转换为一个完全由 C# 代码组成的文件。
图 2 T4 模板的属性