Просто пытаюсь получить sql, который создается с помощью запроса linq.
Как увидеть сгенерированный sql из запроса linq
Ответ 1
С Linq2Sql
dc.GetCommand(query).CommandText
см. http://msdn.microsoft.com/en-us/library/system.data.linq.datacontext.getcommand.aspx для получения дополнительной информации.
Но я обычно использую LinqPad
Ответ 2
Есть 3 способа сделать это.
1. Вы можете использовать LINQPad.It Free http://www.linqpad.net/
2.Вы можете использовать Profiler SQL Server внутри сервера Sql (Tools → Profiler SQL Server)
3.Вы можете использовать Visual Studio Debugger для создания T-Sql. (с любой версией на Visual Studio)
Я написал сообщение в блоге об этой проверке Как преобразовать запрос Linq Entity в T-SQL?
Ответ 3
Используйте SQL Profiler
, если вы используете SQL Server как свою базу данных.
Ответ 4
Это появилось в Google, это учебное пособие из 8 человек. Я думаю, это заставит вас заняться в течение нескольких часов, мне кажется, это очень подробно.
1: http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx
3: http://weblogs.asp.net/scottgu/archive/2007/06/29/linq-to-sql-part-3-querying-our-database.aspx
4: http://weblogs.asp.net/scottgu/archive/2007/07/11/linq-to-sql-part-4-updating-our-database.aspx
Удачи.
Ответ 5
Другой способ
Из статьи MSDN Практическое руководство. Отображение сгенерированного SQL (LINQ to SQL)
Установите DataContext.Log
Свойство Console.Out
, и вы увидите его на консоли
Ответ 6
Самый простой способ, который я мог бы предложить, - пойти с Database
Log
. Положите Log
после инициализации DataContext
, и вы сможете отслеживать все, что делается EF в окне visual studio output
.
DataContext db = new DataContext();
db.Database.Log = generatedSQL =>
{
Debug.WriteLine(generatedSQL);
};
Ответ 7
Вы можете использовать инструменты диагностики в Visual Studio, чтобы увидеть сгенерированный запрос.
Чтобы включить это, перейдите в верхний правый угол, там вы можете увидеть быстрый поиск и набрать диагностические инструменты.
В результатах нажмите на соответствующую опцию и смотрите ниже для сгенерированного запроса.