有没有简单的方法可以找出我的LINQ-to-SQL查询生成的T-SQL?
最好使用一些LINQ入口点,而不是像 Microsoft SQL Server Profiler 或 LINQ-to-SQL Profiler 这样的许可软件产品。
答案 0 :(得分:1)
如果您的C#代码中有Linq-to-SQL查询,只需调试到您的应用程序并将鼠标悬停在获取结果的变量上 - 您应该能够检查该Linq使用的实际SQL to-SQL查询。
答案 1 :(得分:1)
您可以使用DataContext类的Log属性。以下是一个示例:DataContext.Log - Logging LINQ To SQL Output to Console or Debugger Output Window
答案 2 :(得分:1)
调用查询的ToString()
方法。
只要结果集为IQueryable<T>
,ToString()方法就会输出查询:
dbDataContext db = new dbDataContext();
var query = from c in db.Customers
where c.Name == "foo"
select c;
Response.Write(query.ToString());