繁体   English   中英

实体框架生成的SQL

[英]Entity Framework Generated SQL

是否可以在全局级别而不是按查询的基础上输出实体框架生成的SQL? 我希望把它全部丢弃,以便我可以查看它。

如果这不可能,我如何查看为更新和插入生成的SQL?

SQL Server Profiler允许您在应用程序运行时查看服务器上正在执行的命令。

另一个用于在此处分析SQL Server 2005 Express的免费工具。

UPDATE

查看LINQ生成内容的另一种方法是DataContext的Log属性。

它是一个TextWriter,应该很容易将内容保存到文件或重定向到Console.Out。

Log属性的MSDN信息

你想要LinqPad ,这里有一些视频 ,告诉你如何使用它

由于最初这是问题,您现在还可以使用EFProf来分析您的Entity Framework应用程序,它允许您在许多其他指标中查看SQL Generated。

我也在寻找答案。 事实证明,如果您不介意进入有点粗略的反射世界,那么查看EF生成的SQL有一种非常好的方式。

MSDN论坛上一张非常资源丰富的海报写了一组扩展方法,允许您转储ObjectContext的SQL输出(即调用SaveChanges()时将执行的内容)。

你可以在这里找到链接 - 查找包含CustomExtensions类的g_yordanov的帖子。

我在过去的一段时间里一直在测试它,它似乎很好地完成了这个伎俩。 唯一的问题是我必须在该线程中进行David Cater建议的修复 - 将Dictionary<long, object>更改为Dictionary<int, object>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM