如何在运行时调试EF5生成的SQL?

3

我对EntityFramework还比较新,目前处于POC阶段,我正在尝试回答一个问题,即如何通过调试器或其他可附加工具来可视化EF生成的查询?

我要解决的问题是,在调试QA或生产问题时,开发人员需要能够通过远程调试器附加到进程,并需要可视化EF创建的查询,以查看它是否以最有效的方式构建。

在开发过程中也可以这样说,我需要能够可视化EF所做的查询。

1个回答

3
您可以选择以下任一方法:
  1. 使用 Sql Server Management Studio 查询分析器查看流向数据库的流量(可能是最不具侵入性的方法)
  2. 将 VS 附加到您的进程并使用 IntelliTrace,它应该显示发送到数据库的命令
  3. 尝试使用 EF Tracing 提供程序 (http://code.msdn.microsoft.com/EFProviderWrappers)
  4. 对于查询,您可以在 ObjectQuery 对象上执行 .ToTraceString(),在调试时在 DbQuery 对象上执行 .ToString()

编辑

EF6 包含一个新功能,允许您记录到数据库的流量


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接