Я хочу отладить хранимую процедуру SQLCLR в SQL Server. Я безуспешно пытался отладить SP в сообществе VS2015 и в недавно установленных выпусках сообщества VS2017. Я почти уверен, что проблема заключается в подключении к SQL Server, но, поскольку я сделал все, что мог найти в Интернете, но безрезультатно.
При создании проекта базы данных в SQL Server Express LocalDB все работает нормально. Если я изменю строку подключения для использования моего SQL Server Developer Edition, я получу сообщение об ошибке. Я сделал следующее:
- Я создал новую базу данных. Я единственный пользователь сервера, и он находится на том же настольном компьютере, который я использую для Visual Studio.
В Visual Studio я создал простой проект базы данных с простым методом отправки текста в выходной канал.
[Microsoft.SqlServer.Server.SqlProcedure] public static void mytest () { SqlContext.Pipe.Send("in clr Craig1"); }
- Я отредактировал строку целевого подключения в свойствах проекта, чтобы подключиться к новой базе данных, и успешно получил подключение при нажатии кнопки подключения. В строке подключения для меня использовалась проверка подлинности Windows с тем же пользователем, что и владелец базы данных.
- Я построил и развернул решение и проверил обозреватель объектов SQL, чтобы убедиться, что SP был развернут. Это было.
- Я выбрал сервер и, щелкнув правой кнопкой мыши, выбрал «Разрешить отладку SQL/CLR». Я проверил его еще раз, чтобы убедиться, что он действительно установлен.
- Я выбрал хранимую процедуру и, щелкнув правой кнопкой мыши, выбрал "Процедура отладки...".
- Отобразился сценарий отладки. Я подошел к линии, чтобы выполнить SP, а затем нажал F11, чтобы вмешаться. В этот момент мне было показано следующее:
- Я нажал на вложение и получил следующую ошибку:
После этого процедура выполняется и выполняет функцию конвейера, но не позволяет выполнять присоединение и отладку.
Любые идеи о том, что я делаю неправильно? Спасибо, Крейг.