Vou aproveitar a resposta de Davide e o comentário de Ian, porque esse foi exatamente o processo pelo qual passei.
Suposição :a resposta é baseada em VS2008 e VS2010 .
Para percorrer um procedimento armazenado T-SQL no SQL Server durante a depuração de um aplicativo .NET, você precisa fazer o seguinte:
-
Siga as instruções do Suporte da MS "Como depurar procedimentos armazenados no Visual Studio .NET (Opção 2) "
- Verifique se você ativou a depuração do SQL Server nas propriedades do projeto (Etapa 4 nas instruções vinculadas).
- Verifique se você definiu um ponto de interrupção no procedimento armazenado em si (Etapas 6-7)
-
Ative a opção Permitir depuração SQL/CLR na conexão de dados na qual o procedimento armazenado é chamado:
- (sem esta segunda etapa, você obterá "O ponto de interrupção não será atingido no momento. Não é possível vincular o ponto de interrupção do SQL neste momento. Objeto que contém o ponto de interrupção não foi carregado." conforme relatado por Ian)
- Explorador de servidores> Conexões de dados
- Clique com o botão direito na conexão que você está usando no código
- Marque Permitir depuração SQL/CLR opção no menu
Adicionado a partir de comentários:(Isso parece ser a chave para fazê-lo funcionar)
Ele também funciona com uma conexão criada programaticamente. Você só precisa usar a exatamente a mesma string de conexão que é exibido quando você clica com o botão direito do mouse na instância do servidor, clique em 'Propriedades' e role para baixo até 'String de conexão' (Verbindungszeichenfolge em alemão).