是否有任何简单的方法可以找出我的LINQ-to-SQL查询生成的T-SQL?我的LINQ-to-SQL查询正在执行什么T-SQL?
最好使用一些LINQ入口点,而不是许可的软件产品如的Microsoft SQL Server探查或LINQ到SQL事件探查器。
是否有任何简单的方法可以找出我的LINQ-to-SQL查询生成的T-SQL?我的LINQ-to-SQL查询正在执行什么T-SQL?
最好使用一些LINQ入口点,而不是许可的软件产品如的Microsoft SQL Server探查或LINQ到SQL事件探查器。
可以使用DataContext类的Log财产。以下是一个示例:DataContext.Log - Logging LINQ To SQL Output to Console or Debugger Output Window
如果您在C#代码中有Linq-to-SQL查询,只需调试到您的应用程序并将鼠标悬停在接受结果的变量上 - 您应该能够检查该Linq使用的实际SQL到SQL查询。
调用查询的ToString()
方法。
只要ResultSet是IQueryable<T>
的ToString()方法将输出查询:
dbDataContext db = new dbDataContext();
var query = from c in db.Customers
where c.Name == "foo"
select c;
Response.Write(query.ToString());
你可以看到LINQ查询可视化工具的更多详细信息:http://msdn.microsoft.com/en -us /库/ bb629285.aspx – Giorgi 2010-04-07 17:43:06