MiniProfiler имеет пустой список параметров

Работая с последней стабильной версией MiniProfiler (3.2), у меня возникает проблема, когда список параметров для команды пуст. SQL команды распечатывается через MiniProfiler, но параметры на самом деле не удаляются.

Вывод SQL (в качестве примера) показан, и я считаю, что он выполняется следующим образом:

   Select person_ID, first_NME, last_NME from Customer where customer_Id = @p0

когда запрос выполняется, я получаю сообщение об ошибке: необходимо объявить скалярную переменную "@p0

Я могу отлаживать и просматривать DBCommand для miniProfiler, и в списках параметров ничего нет.

Кто-нибудь сталкивался с этим раньше? Я уже пытался установить SQLFormatter, но не думаю, что это помогает, потому что у меня нет никаких параметров.


person Dan    schedule 15.11.2017    source источник


Ответы (1)


Если вы получаете такую ​​ошибку:

Необходимо объявить скалярную переменную "@p0"

Это исходит от драйвера ADO.NET под MiniProfiler (из какой бы базы данных вы ни подключались — здесь я предполагаю SQL Server, но это относится ко всем). Список параметров MiniProfiler должен отображаться пустым, потому что на самом деле он пуст, что является тем же источником исключения.

Но если вы все еще видите это без MiniProfiler и оно каким-то образом мешает... меня это очень интересует.

Примечание: многое из этого было переписано в MiniProfiler v4, который в настоящее время доступен в бета-версии на NuGet. После тестирования на этой неделе на Stack Overflow, если все пойдет хорошо, вскоре после этого он должен увидеть RTM 4.0. Если вы обнаружите ошибки в v4, сообщите мне о проблеме по адресу: https://github.com/MiniProfiler/dotnet/issues, и я посмотрю как можно скорее.

person Nick Craver    schedule 18.03.2018