Есть ли простой способ увидеть операторы SQL, сгенерированные EntityDataSource?
Профилирование / трассировка SQL Server здесь не вариант.
Вы можете разыграть ObjectQuery и позвонить ToTraceString:
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 . У меня еще не было возможности попробовать это, но это определенно в моем списке дел.
Раньше я использовал NHProf для профилирования для NHibernate, и это здорово.Так что я могу с уверенностью сказать, что вы должны попробовать Entity Framework Profiler , который я только что проверил, и, что касается NHProf, есть бесплатная пробная версия.