Лучший способ показать трассировку SQL запроса LINQ в Entity Framework 3.5 - PullRequest
1 голос
/ 13 октября 2010

Лучший способ показать трассировку SQL запроса LINQ для Entity Framework 3.5?

Я использую ASP.net и EF 3.5.

Dim dbo As Web.Portal.RBMEntities = New Web.Portal.RBMEntities

Dim Query = From RoleAllocations In dbo.RoleAllocations Where RoleAllocations.user_id = _ID And RoleAllocations.expire_date > Today Select RoleAllocations

' Console write the SQL trace???

Спасибо!

Ответы [ 3 ]

2 голосов
/ 13 октября 2010

Я только что попытался сделать это:

        Dim TraceString As String = TryCast(Query, ObjectQuery).ToTraceString

Прекрасно работает и возвращает трассировку SQL оператора LINQ.

1 голос
/ 14 марта 2012

Entity Framework Profiler найден здесь http://efprof.com/ делает это очень элегантно.

Его легко начать использовать, а также дает некоторые подсказки о возможных «проблемах» сваши запросы.Это поможет вам понять, что происходит под «капотом EF».

Это не бесплатно, но есть 30-дневная пробная версия.Я бы порекомендовал его новичкам в EF, так как может быть непонятно, как EF абстрагирует болтовню базы данных.

Настройка плавная и легкая.После загрузки ознакомьтесь с разделом «Как использовать .txt».

1 голос
/ 13 октября 2010

Использовать SQL profiler? ... при условии, что вы имеете в виду SQL Server

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