sql-server - 使用Count时如何查看EntityFramework生成的sql

标签 sql-server entity-framework linq

当我生成如下查询时:

var query = from x in Entities.SomeTable
            select x;

我可以设置一个断点,将光标悬停在查询上后,我可以看到发送到数据库的 SQL 命令是什么。不幸的是,当我使用 Count 时我无法做到这一点

var query = (from x in Entities.SomeTable
            select x).Count();

当然,我可以使用探查器查看 SqlServer 的情况,但也许有人知道如何在 VS 中执行此操作(如果可能的话)。

最佳答案

您可以使用ToTraceString():

ObjectQuery<SomeTable> query = (from x in Entities.SomeTable select x).Count();
Console.WriteLine(query.ToTraceString());

关于sql-server - 使用Count时如何查看EntityFramework生成的sql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39245879/

相关文章:

linq - EF/Linq 枚举错误

c# - 有没有办法将键/值对列表转换为数据传输对象

sql-server - Entity Framework 代码优先迁移,sql用户权限?

sql-server - 无法访问列中包含 Φ 字符的数据库

c# - SQL Server 存储过程返回值,并在 C# 中使用

c# - 如果元素中存在属性,则将 XAttribute 添加到 XElement

c# - 使用导航属性的 T-SQL 到 LINQ to SQL

sql - Try Catch - 资源强度?

c# - EF 迁移显示空的 Up() Down() 方法

c# - Entity Framework - 将表的列名作为字符串数组