LINQ To SQL -获取已运行的SQL

本文关键字:SQL 运行 To LINQ 获取 | 更新日期: 2023-09-27 18:13:31

我正在开发一个使用LINQ to SQL调用SPROC的系统。

是否有方法获得SQL ExecuteMethodCall已执行

澄清我想要SQL的原因是在c#级别记录SQL到文件

LINQ To SQL -获取已运行的SQL

您可以使用DataContext.Log属性:

// Attach a TextWriter, e.g. Console.Out
db.Log = File.CreateText(@"sql.log");
IQueryable<Customer> custQuery =
    from cust in db.Customers
    where cust.City == "London"
    select cust;
foreach(var custObj in custQuery)
{
    Console.WriteLine(custObj.CustomerID);
}

使用SQL Server Profiler捕获对SQL Server执行的SQL语句