L2ST4とは

それでは、L2ST4(LINQ to SQL templates for T4)を用いて実用的なコードを生成してみましょう。L2ST4は、LINQ to SQLのマッピングコードを出力できるテンプレートで、MicrosoftのDamien Guard氏によって開発されています。

L2ST4の入手

L2ST4はCodePlexにてMs-PLライセンスにて公開されています。リリースファイルはまだ提供されていないため、リポジトリからダウンロードします。本稿ではChange Set22448を利用します。

L2ST4の実行方法

コードを生成する手順は次のようになります。

  • 1.「LINQ to SQLクラス」を新規作成する(ここではMy.dbml)

  • 2.My.dbmlにモデルを配置する

  • 3.My.designer.csのビルドアクションを「なし」に変更する

  • 4.ダウンロードファイル(l2st4-22448.zip)を解凍し、L2ST4.ttincludeとCSharpDataClasses.tt(VBではVBNetDataClasses.tt)をプロジェクトに配置する

  • 5.CSharpDataClasses.ttをモデルと同じ名前にする(ここではMy.tt)

  • 6.My.ttを右クリックして「カスタムツールの実行」を選ぶ

  • LINQ to SQLのモデル(書籍と出版社)

    T4によって生成されたLINQ to SQLのマッピングコード

    この手順によってSqlMetalとほぼ同じ内容のコードを生成できます。ここではMy.ttがMy.dbmlの内容を読み取ってコード(DataContext、出版社クラス、書籍クラス)を生成しています。