はじめに

T4(Text Template Transformation Toolkit)は、Visual Studioで利用できるテンプレート機能です。この機能を活用すると任意のテキストを簡単に生成できます。本稿では、T4の使い方と、CodePlexで公開されているL2ST4(LINQ To SQL templates for T4)を用いて、LINQ to SQLのモデル(*.dbml)からソースコードを生成する方法を紹介します。

T4について

T4DSL Toolsの一部として提供されています。そのため、Visual StudioのStandard Edition以上にVisual Studio 2008(2005) SDK、もしくはGATをインストールして使用します。 無償のExpress Editionの場合は、「Program Files\Common Files\microsoft shared\TextTemplating\<バージョン>\TextTransform.exe」を外部ツールから呼び出して使用します。

T4の特長

T4では、テンプレートをC#(VB)のコードに変換してからテキスト出力を行います。このため、テンプレートをコンパイルしてチェックすることができます。また、生成したソースコードを同時にコンパイルして、生成内容が正しいかもチェックできます。

最初の例

それでは、簡単な文字列を出力をしてみましょう。新しいテキストファイルを作成し、拡張子を「tt」に変更します。そして、下図のようなテンプレートを記述して保存します。そうすると、同名のテキストファイルが出力されます。

T4でテキストを出力(Sample1.ttがテンプレート、Sample1.txtが出力結果)