作法:顯示產生的 SQL
您可以檢視針對查詢所產生的 SQL 程式碼,並且使用 Log 屬性變更處理。 若要了解 LINQ to SQL 功能以及對特定問題進行偵錯,這個方法很實用。
範例
下列範例會使用 Log 屬性,在執行 SQL 程式碼之前,於主控台視窗中顯示該程式碼。 您可以使用這個屬性搭配查詢、插入、更新和刪除命令。
主控台視窗中的程式行就是您在執行下列 Visual Basic 或 C# 程式碼時所看到的內容。
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