在 ASP.NET MVC 中使用 T4

  • Abel Avram
  • 赵劼

2009 年 2 月 13 日

话题:.NET语言 & 开发

在项目里添加控制器和视图时,ASP.NET MVC 使用

T4

(文本模板转换工具箱,Text Template Transformation Toolkit)来生成代码。T4 是一个高度定制化的,基于模板的文本生成器。

Scott Guthrie 之前所宣布的 ASP.NET MVC 的功能之一就是

使用 T4 来生成代码

。代码由 T4 引擎基于文本模板生成。这意味着任何人可以创建或修改这样的模板,对生成的代码进行完全的控制。

一个 T4 模板结合了纯文本块和逻辑控制,看上去和其他 Web Form 页面十分接近。Abhishek Mishra 给出了

一个编辑模板的详细示例

在 Visual Studio 中编辑 T4 模板无法得到智能感知支持,但是 Clarius Consulting 提供了一个

T4 编辑器社区版

,可以与 VS 集成并提供语法高亮效果。他们同时提供了专业版,包括真正的智能感知支持;以及

T4 代码生成器

版本,支持自定义的 T4 托管环境(WSSF,ASP.NET MVC)、Server Explorer 集成、XML 和 XSD 文件的拖拽、友好的数据库元数据获取 API 等其他功能。

T4 可用于自动生成任何类型和目的文本文件。Scott Hanselman 给出了一个示例:

使用模板来生成 LINQ to SQL 代码

。Scott 建议使用 T4 来完成各种重复性的文本生成任务,即便它们与.NET 无关:“如果您在公司里要把同一件事手动重复多遍,那么就让它自动生成吧。”

InfoQ 提供了一个关于

T4 的技术性介绍

,包含一些有用的文章和 MSDN 文档的链接。

查看英文原文:Using T4 in ASP.NET MVC

.NET语言 & 开发