How to: Display LINQ to SQL Commands (LINQ to SQL)
Use GetCommand to display SQL commands and other information.
In the following example, the console window displays the output from the query, followed by the SQL commands that are generated, the type of commands, and the type of connection.
// using System.Data.Common; Northwnd db = new Northwnd(@"c:\northwnd.mdf"); var q = from cust in db.Customers where cust.City == "London" select cust; Console.WriteLine("Customers from London:"); foreach (var z in q) { Console.WriteLine("\t {0}",z.ContactName); } DbCommand dc = db.GetCommand(q); Console.WriteLine("\nCommand Text: \n{0}",dc.CommandText); Console.WriteLine("\nCommand Type: {0}",dc.CommandType); Console.WriteLine("\nConnection: {0}",dc.Connection); Console.ReadLine();
Output appears as follows:
Customers from London:
Thomas Hardy
Victoria Ashworth
Elizabeth Brown
Ann Devon
Simon Crowther
Marie Bertrand
Hari Kumar
Dominique Perrier
Command Text:
SELECT [t0].[CustomerID], [t0].[CompanyName], [t0].[ContactName], [t0].[ContactT
itle], [t0].[Address], [t0].[City], [t0].[Region], [t0].[PostalCode], [t0].[Coun
try], [t0].[Phone], [t0].[Fax]
FROM [dbo].[Customers] AS [t0]
WHERE [t0].[City] = @p0
Command Type: Text
Connection: System.Data.SqlClient.SqlConnection