точный SQL-запрос, выполненный Entity Framework - PullRequest
2 голосов
/ 08 декабря 2010

вопрос кажется достаточно ясным, но я добавлю кейс

using (var context = new MyEntities())
{
  if(context.mytable.Any(row => row.myfield == 2))
  {
    // do something here
  }
}

Я новичок в Entity Framework.Я не знаю, как проверить точный SQL-запрос?

Ответы [ 3 ]

8 голосов
/ 08 декабря 2010

Как указано выше, вы можете использовать SQL Profiler, LINQPad, EF Profiler и т.д.

Просто приведите ваш запрос как ObjectQuery<T>.

var query = context.mytable.Any(row => row.myfield == 2));
var trace = ((ObjectQuery<MyTable>)query).ToTraceString();

. Он выдаст SQL, который должен быть выполнен.

Очень удобно для ведения журнала в последнюю минуту.

4 голосов
/ 08 декабря 2010

Подобный вопрос можно найти здесь: Как просмотреть сгенерированный SQL из Entity Framework?

Подводя итог, вы можете выбрать:

Подробнее см. Указанный вопрос.

0 голосов
/ 08 декабря 2010

Если вы подключаетесь к SQL Server, вы можете использовать SQL Profiler для получения сгенерированного SQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...