3

从 EF 获取 sql 查询的最有效方法是什么?我需要这个,所以我可以运行查询分析并找到它的执行计划。

我知道我可以将分析器连接到 SQL 服务器,但是这一步很痛苦,并且对生产力造成了巨大的打击,几乎足以完全放弃 ORM。

是否有更好、更有效的方法来优化 EF 查询?

4

3 回答 3

4

ToTraceString方法可以为您执行此操作

于 2012-10-02T14:52:50.743 回答
3

如果将 IQueryable 转换为 ObjectQuery,则可以使用 ToTraceString() 方法查看 SQL 查询。

于 2012-10-02T14:53:57.143 回答
2

是否有更好、更有效的方法来优化 EF 查询?

是的,购买EF ProfilerHuagati Profiler。或者,使用EF Provider 包装器进行跟踪。

我知道我可以将分析器连接到 SQL 服务器,但是这一步很痛苦,并且对生产力造成了巨大的打击,几乎足以完全放弃 ORM。

Profiler 只是故事的一半。还有数据库引擎优化顾问,如果您真的想优化 SQL 查询,这些工具是主要工具集 - 但是优化您无法控制的 SQL 查询非常困难,有时甚至是不可能的。

于 2012-10-02T14:56:19.617 回答