Мне иногда нужно увидеть, какой SQL-запрос SubSonic генерирует.Метод расширения для преобразования объекта SubSonic SqlQuery в обычный SQL
Это прекрасно работает с:
SqlQuery qry = DB.Select().From<Product>()
.Where(Products.Columns.Name).IsEqualTo("Productname");
Console.WriteLine(qry.BuildSqlStatement());
Однако, что возвращает запрос с параметрами (SELECT ... WHERE productname = ?productname
). Поэтому мне всегда нужно найти реальные значения в моем коде и заменить параметры форматированным значением propper (например, productname = 'Productname'), что может быть очень раздражающим сложными запросами.
Итак, я решил сделать метод расширения, который хочу поделиться (посмотрите на мой ответ на код).
У вас есть конкретный вопрос? В противном случае, я предлагаю вам отправить решение в качестве ответа, а не часть этого вопроса (возможно, сделать его общедоступным wiki) - в противном случае он будет закрыт. – Noldorin