使用 SQL Server Profiler 查看 Entity Framework 产生的SQL语句

1.首先修改程序配置文件中 Entity Framework 的数据库连接字符串,将其中的[application name](或者[app])节点修改为你知道的名称(默认情况下,这个值是 EntityFramework),如:MyEf;

1 <connectionStrings>
2     <add name="MyEntities" connectionString="metadata=res://*/MyModel.csdl|res://*/MyModel.ssdl|res://*/MyModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=mydb;user id=sa;password=123456;MultipleActiveResultSets=True;application name=MyEf&quot;" providerName="System.Data.EntityClient" />
3   </connectionStrings>

 

2.从【开始菜单】-【Microsoft SQL Server 2008 R2】-【性能工具】-【SQL Server Profiler】打开 SQL Server Profiler 工具;

 

 

3.新建一个跟踪,并选择你要跟踪的数据库服务器(选择与数据库连接字符串中一致的那一个):

在跟踪属性的【常规】选项卡中,【使用模板】项选择“TSQL”;

在跟踪属性的【事件选择】选项卡中,勾除掉【Audit Login】和【Audit Logout】事件;

在跟踪属性的【事件选择】选项卡中,点击【列筛选器】按钮,在ApplicationName列中,进行“类似于"条件筛选,填入“MyEf”值(连接字符串中定义的名称);

点击【运行】按钮,开始跟踪;

 

4.运行你的程序,在程序中执行任意一条数据库查询或者操作,都会捕捉到,并且可以再[TextData]列中查看到操作执行的SQL语句;

posted @ 2015-05-27 15:28  之美  阅读(673)  评论(0编辑  收藏  举报