var query = (from x in context.MyEntity where x... select x);
(query as ObjectQuery<MyEntity>).ToTraceString();
Это будет печатать в журнале трассировки ... если вы хотите простой просмотрщик трассировки (вне Visual Studio), посмотрите DebugView
И в качестве дополнительного примечаниялучший из профилировщиков «реального времени», который я использовал / видел, это Entity Framework Profiler , вы должны заплатить за него, но есть пробная версия, и она даст вам SQL, соответствующийстрока кода.Это также признает общие "проблемы".Установка очень проста ... все, что вам нужно добавить, это один оператор в инициализаторе вашего приложения.
** Редактирование обновлено, чтобы показать, как это сделать с кодом пользователя **
Думаю, я могу сделать всю тяжелую работу за тебя ...;).Поскольку вы используете раздражающий тип, просто пропустите часть <T>
.
var cklContactItems = from a in dbTestCenterViews.appvuChecklistExports
where a.MarketChecklistID == MCLID
&& a.checklistSectionID == SID
&& a.fieldGroupOrder != null
orderby a.fieldGroupOrder ascending
select new {
a.Column1,
a.Column2,
a.Column3,
a.Column4,
a.Column5,
a.Column1FieldID,
a.Column2FieldID,
a.Column3FieldID,
a.Column4FieldID,
a.Column5FieldID,
a.fieldGroupOrderLabel
};
System.Diagnostics.Trace.WriteLine((query as ObjectQuery).ToTraceString());