恐らく.NET3.5で行われた最大のプログラミングモデルの改善点はデータの検索を第一級プログラミング概念としたことでしょう。この全体的なクエリのプログラミングモデルを"LINQ"とよび、これは.NET Language Integrated Query(.NET言語統合クエリ)を略したものです。開発者はLINQをどのデータソースとも使用することができ、.NET3.5で含まれるビルドインライブラリによりLINQはオブジェクト、XML、データベースをサポートすることができるようになります。
今夏の初旬にマルチパートブログシリーズを始めました。そこでは、.NET3.5にあるビルドインLINQ to SQLプロバイダについて述べています。LINQ to SQLは、ORM(オブジェクトリレーショナルマッピング)の実装のことで、.NETクラスを使用してリレーショナルデータベースをモデル化することができます。LINQを使用してデータベースを検索し、そこからデータを更新、挿入、削除することができます。LINQ to SQLはトランザクション、ビュー、ストアドプロシージャを完全にサポートしています。またデータ検証およびビジネスロジックルールをデータモデルに簡単に統合することができます。
LINQ to SQLについての詳細は以下の投稿をご覧ください。(これからまた投稿します。)
LINQ to SQLデバッグビジュアライザの使用
LINQ to SQLがサポートする優れた開発機能の1つは、"デバッグビジュアライザ"機能で、VS2008デバッガ内でLINQ文にマウスオーバーし、LINQクエリ文の評価中にORMがランタイムで最後に実行する生のSQLを検査することができます。
例えば、以下のようなLINQクエリ文コードをデータモデルクラスに対して書いていると仮定します。
クエリ文が割り当てられた後、"products"にマウスオーバーするとVS2008デバッガを使用することができます。
上記の文の上で小さい拡大鏡をクリックすれば、LINQ to SQLデバッグビジュアライザを起動することができ、そのLINQクエリに基づいてORMが実行する生のSQLを検査することができます。
"Execute(実行)"ボタンをクリックすれば、SQLクエリをテストすることができ、データベースから返される生の戻り値も見ることができます。
お分かりの通り、これによりLINQ to SQL ORMが行うSQLクエリロジックを正確に確認することが非常に簡単になります。
これがどのように機能しているかについての詳細は、上述のLINQ to SQLシリーズにあるパート3: データベースの検索セグメントをご覧ください。
LINQ to SQLデバッグビジュアライザのインストール方法
LINQ to SQLデバッグビジュアライザはVS2008にはビルドインされていませんが、ダウンロードしてアドインとして使用することができます。ここからダウンロードできます。
ダウンロードすると、ビジュアライザのバイナリ.dllアセンブリバージョンとビジュアライザのソースコードが両方含まれています。
LINQ to SQLデバッグビジュアライザのインストールは以下のステップで行ってください。
1) 起動中の全てのVisual Studio 2008をシャットダウンしてください。
2) ローカルの\Program Files\Microsoft Visual Studio 9.0\Common7\Packages\Debugger\Visualizers\ディレクトリに、上記でダウンロードしたZIPファイルにある\bin\debug\ディレクトリからSqlServerQueryVisualizer.dllアセンブリコピーしてください。
3) Visual Studio 2008を再起動してください。これでLINQ to SQLでデバッガを使用する時に、LINQクエリ文にマウスオーバーして生のSQLを検査することができます。(別に登録は必要ありません。)
Hope this helps,
Scott