10

这个问题在这里已经有了答案:
查看 linq-to-sql 产生的 sql 3 个答案

我想知道在运行 LINQ to SQL 查询时是否有办法查看在 Visual Studio 2010 Ultimate 中针对数据库执行的 T-SQL。

4

4 回答 4

23

如果您有 Visual Studio Ultimate,您可以在调试时在 IntelliTrace 窗口中查看您的应用程序运行的每个 SQL 查询。

于 2012-06-12T18:28:18.003 回答
10

您可以使用 SQL Server Profiler 来执行此操作。

于 2012-06-12T18:26:59.673 回答
6

你基本上有两个选择:

1.) 使用分析器,AnjLab 免费提供一个http://anjlab.com/en/projects/opensource/sqlprofiler

2.) 使用 LinqPad(又是一个免费的解决方案)http://www.linqpad.net/

你真的不需要 Ultimate VS 或像某些人已经建议的那样付费的东西......

于 2012-06-12T18:29:32.633 回答
5

您可以使用 DataContext 的Log 属性

db.Log = Console.Out;
var custQuery =
    from cust in db.Customers
    where cust.City == "London"
    select cust;

foreach(Customer custObj in custQuery)
    Console.WriteLine(custObj.CustomerID);
于 2012-06-12T18:29:25.663 回答