获得SQL查询的LINQ到SQL? [英] Get SQL query from LINQ to SQL?

查看:139
本文介绍了获得SQL查询的LINQ到SQL?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有我传递字节[] 作为参数的查询。我试图让SQL查询出它和运行管理工作室,查询调试。我怎样才能提取SQL语句从它?

  committeeMember =
           db.Committee_Member.FirstOrDefault(X => x.Customer_Number == activity.Contact.Number
           &功放;&安培; x.Position_Start_Date.Value.Year == activity.EndDate
           &功放;&安培; x.Committee_Id == activity.Committee.Id和放大器;&安培; !x.Cancelled = 1);
 

解决方案

在调试器悬停鼠标移到 commiteeMember 变量 - 它会显示生成的SQL查询:

这是什么的ToString()返回查询。您可以通过手动调用toString得到相同的生成SQL查询:

 字符串SQL = committeeMember.ToString();
 

此重写的方法内部调用<一href="http://msdn.microsoft.com/en-us/library/system.data.objects.objectquery.totracestring.aspx"><$c$c>ObjectQuery.ToTraceString()它返回,将运行在数据源的命令。


你也可以使用SQL事件探查器或实体框架事件探查器查看被执行的SQL查询。

I have a query which I am passing byte[] as a parameter. I am trying to get the SQL query out of it and run that query in management studio to debug. How can I extract the SQL statement from it?

 committeeMember =
           db.Committee_Member.FirstOrDefault(x => x.Customer_Number == activity.Contact.Number
           && x.Position_Start_Date.Value.Year == activity.EndDate
           && x.Committee_Id == activity.Committee.Id && x.Cancelled != 1);

解决方案

In debugger hover mouse over commiteeMember variable - it will show generated SQL query:

This is what ToString() returns for query. You can get same generated SQL query manually by calling ToString:

string sql = committeeMember.ToString();

This overridden method internally calls ObjectQuery.ToTraceString() which returns commands that will run on data source.


Also you can use SQL Profiler or Entity Framework Profiler to see which SQL query was executed.

这篇关于获得SQL查询的LINQ到SQL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆