LINQ to SQL で実行される SQL を出力ウィンドウに表示する方法。

まず、次のようなクラスを定義する。
class DebugTextWriter : System.IO.TextWriter {
   public override void Write(char[] buffer, int index, int count) {
       System.Diagnostics.Debug.Write(new String(buffer, index, count));
   }

   public override void Write(string value) {
       System.Diagnostics.Debug.Write(value);
   }

   public override Encoding Encoding {
       get { return System.Text.Encoding.Default; }
   }
}

そして System.Data.Linq.DataContext の Log プロパティにセットしてやればいいようだ。
db.Log = new DebugTextWriter();

また、ファイルに書き出す場合は以下のようにする。
   db.Log = new System.IO.StreamWriter("sql.log") { AutoFlush = true };

以上です。