2010-11-18 6 views
3

LINQ DataContextのLogプロパティを使用して、のGenerated SQLをデバッグウィンドウに送信します。 (それについてはpost by Kris Vandermottenがあります)。これは正常に機能しますが、出力されたSQLパラメータはSQLコメントであるため、はManagement Studioでクエリを実行できません。ここに例があります:SSMSでLINQ生成SQLを実行

SELECT * FROM table WHERE id IN (@p0,@p1,@p2) 
-- @p0: Input Int (Size = 0; Prec = 0; Scale = 0) [5] 
-- @p1: Input Int (Size = 0; Prec = 0; Scale = 0) [1] 
-- @p2: Input Int (Size = 0; Prec = 0; Scale = 0) [13189086] 

このテキストを有効なSQLに変換するツールはありますか?

+0

ご希望の結果がその値に置き換え、すべてのパラメータプレースホルダを持つだけでSQL文のですか?あるいは、私の応答のLINQPadの出力に似た、 'DECLARE'文が必要なのでしょうか? –

+0

パラメータがDECLAREされているとうれしいですが、パラメータを代入すれば妥当です。目的は、実行可能なクエリを持つことです。 – jaraics

答えて

2

LINQPad(無料!)を取得し、LINQ to SQLを直接実行することができます。次に、LINQPadの "SQL"タブをクリックして、生成されたSQLを表示します。 DECLAREあなたのためのすべてのパラメータとあなたはそれをSSMSにコピー/ペーストすることができます(またはSQLタブからSSMSで起動するために "Analyze SQL"をクリックします)。 LINQPadから直接実行することもできます。

スクリーンショット:

LINQPad

+0

ありがとう、それは良いエントリですが、私が探している答えではありません。 – jaraics

関連する問題