我怎样才能知道我的程序何时执行linq表达式执行sql查询?
答案 0 :(得分:2)
分析是一种可靠的方法。根据LINQ提供程序的不同,这也可能是内置的,例如使用LINQ-to-SQL,您可以为.Log
分配任何内容,并且它会像查询一样编写查询。在最简单的层面:
dataContext.Log = Console.Out; // for a LINQ-to-SQL DataContext
// TODO: now execute some queries against dataContext
在内部,我们使用自定义ADO.NET堆栈(以及其他一些东西)。 看起来就像SqlConnection
(LINQ-to-SQL非常满意它),但它会对我们执行的每个命令执行一些日志记录和分析,因此我们可以看到我们的位置长期运营是。我想Sam希望如果你愿意,可以向公众开放。
答案 1 :(得分:1)
分析数据库就可以了。请记住,在您的代码询问查询结果之前,不会对数据库执行该语句。
答案 2 :(得分:1)
您是否尝试过LinqPad?
我相信它会显示您查询的SQL原型。
答案 3 :(得分:1)
ObjectQuery.ToTraceString
方法答案 4 :(得分:0)
var res = somequery;
Console.WriteLine(res);