2010-11-18 14 views
3

J'utilise la propriété de LINQ DataContext Connectez-vous pour envoyer le generatated SQL à la fenêtre de débogage. (Il y a un post by Kris Vandermotten à ce sujet). Cela fonctionne très bien, sauf que les paramètres SQL ouputted quelques commentaires SQL, et donc je ne peut pas exécuter la requête dans Management Studio. Voici un exemple:Execute LINQ généré SQL dans SSMS

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] 

Alors, est-il un outil qui transforme ce texte dans un SQL valide?

+0

est le résultat souhaité que l'instruction SQL avec tous les espaces réservés aux paramètres substitués par leurs valeurs? Ou vouliez-vous toujours inclure les instructions 'DECLARE', semblables à la sortie de LINQPad dans ma réponse? –

+0

Il wolud agréable d'avoir des paramètres DÉCLARÉ, mais il est raisonnable avec les paramètres substitués. Le but est d'avoir une requête qui peut être exécutée. – jaraics

Répondre

2

Vous pouvez saisir LINQPad (gratuit!) Et exécutez votre LINQ to SQL directement. Puis cliquez sur l'onglet "SQL" dans LINQPad pour voir le SQL généré. Il sera DECLARE tous les paramètres pour vous et vous pouvez copier/coller dans SSMS (ou cliquez sur « Analyser SQL » dans l'onglet SQL pour le lancer dans SSMS). Vous pouvez également l'exécuter directement à partir de LINQPad.

Screenshot:

LINQPad

+0

Merci, c'est une bonne entrée, mais pas la réponse que je cherche. – jaraics