如何获取实体框架生成的sql [重复]
Posted
技术标签:
【中文标题】如何获取实体框架生成的sql [重复]【英文标题】:How to get the sql generated by the entity framework [duplicate] 【发布时间】:2011-01-15 15:19:13 【问题描述】:如何获取实体框架查询生成的sql脚本? 即如果我写
entityDataDontext.table1.Where(r => r.primarykey == 1).First();
那么我怎样才能得到应该有点像这样的SQL:
select * from table1 where primarykey = 1
提前致谢:)
【问题讨论】:
请看重复:How do I view the SQL generated by the entity framework ?SQL tracing LINQ to Entitiesvar trace = ((ObjectQuery<T>)query).ToTraceString()
我想在@RPM1984 中添加评论,要针对匿名类型使用此功能,您将使用ObjectQuery
而不是ObjectQuery<T>
。
【参考方案1】:
当您使用 SQL Server 作为后端数据库时,SQL Server Profiler 始终是准确查看哪些 SQL 语句被发送到您的数据库以进行处理的最佳工具。
有关背景信息,请参阅Introducting SQL Server Profiler。
【讨论】:
【参考方案2】:我强烈推荐 MiniProfiler: http://miniprofiler.com/
【讨论】:
【参考方案3】:除了使用 SQL Server Profiler 之外,您还可以尝试 Entity Framework Profiler,它可以做到这一点以及更多。
它是付费的,有 30 天的试用期。
【讨论】:
我之前用过这个,非常好的工具。唯一的问题是它是付费的:(以上是关于如何获取实体框架生成的sql [重复]的主要内容,如果未能解决你的问题,请参考以下文章