Procedura: visualizzare il codice SQL generato

È possibile visualizzare il codice SQL generato per le query e modificare l'elaborazione usando la proprietà Log. Questo approccio può essere utile per comprendere la funzionalità di LINQ to SQL e per eseguire il debug di problemi specifici.

Esempio

Nell'esempio riportato di seguito viene usata la proprietà Log per visualizzare il codice SQL nella finestra della console prima di eseguirlo. È possibile usare questa proprietà con comandi di query, inserimento, aggiornamento ed eliminazione.

Le righe nella finestra della console sono le stesse che vengono visualizzate quando si esegue il codice Visual Basic o C# seguente.

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  
-- @p0: Input String (Size = 6; Prec = 0; Scale = 0) [London]  
-- Context: SqlProvider(Sql2005) Model: AttributedMetaModel Build: 3.5.20810.0  
AROUT  
BSBEV  
CONSH  
EASTC  
NORTS  
SEVES  
db.Log = Console.Out;
IQueryable<Customer> custQuery =
    from cust in db.Customers
    where cust.City == "London"
    select cust;

foreach(Customer custObj in custQuery)
{
    Console.WriteLine(custObj.CustomerID);
}
db.Log = Console.Out
Dim custQuery = _
    From cust In db.Customers _
    Where cust.City = "London" _
    Select cust

For Each custObj In custQuery
    Console.WriteLine(custObj.CustomerID)
Next

Vedi anche