ASP.NET MVCはControllerまたはViewがプロジェクトに追加される場合、T4 (Text Template Transformation Toolkit)(参考記事)を使用し、ひそかにコードを生成する。T4は、テンプレートに基づいた、完全にカスタム可能なテキストジェネレータである。
Scott Guthrie氏によって発表されたASP.NET MVC機能の1つは、コードの生成にT4を使用すること(リンク)である。そのコードは、テキストテンプレートからのT4エンジンによって生成される。それは、結果コードを完全に制御するそうしたテンプレートを作成したり、編集したりすることができることを意味する。
A T4テンプレートはプレーンテキストブロックとコントロールロジックを結合した他のWeb Formと非常によく似ている。Abhishek Mishra氏は、詳述な編集例(リンク)を示した。
Visual StudioにはT4テンプレートを編集するインテリセンスサポートがないが、Clarius ConsultingはVSと統合され、構文ハイライトを提供するT4 Editor Community Edition(リンク)を提供している。また、真のインテリセンスサポートおよび、カスタムT4ホスト(WSSF、ASP.NET MVC)、Server Explorer integration、Drag & Drop XMLおよびXSDファイル、メタデータの検査のためのFriendly DB APIなどをサポートするT4 Code Generator(リンク)がある。
T4は、あらゆる目的ですべてのタイプのテキストファイルを自動化するために使用可能である。LINQ to SQLコードを生成するためのテンプレート(リンク)を使用することで、Scott Hanselman氏は、そうした例を提示した。Scott氏は、単に.NET関連ではなく、反復的なテキスト生成でT4を使うことを以下のように提案している。「手動で何かを2回以上実行しているなら、T4が良い」。
InfoQは、 MSDN文書および役立つ記事へのリンクを盛り込んだT4の技術的な手引き(参考記事)を提供している。