SQL из EntityDataSource
Есть ли простой способ увидеть операторы SQL, сгенерированные EntityDataSource?
Профилирование / трассировка SQL Server здесь не вариант.
2 ответа
Решение
Я использовал NHProf для профилирования для NHibernate, и это здорово. Так что я могу с уверенностью сказать, что вы должны попробовать Entity Framework Profiler
Я только что проверил и, что касается NHProf, есть бесплатная пробная версия.
Вы можете привести к ObjectQuery
и позвонить ToTraceString
:
ObjectSet<User> objectSet = ObjectSet;
var query = (ObjectQuery)(objectSet.Where(u => u.LastName == "Doe").Select(u => u));
string trace = query.ToTraceString();
Для трассировки / кэширования вы можете использовать EF Caching и Tracing Provider Wrapper. У меня еще не было возможности попробовать это, но это определенно в моем списке дел.