sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cómo puedo acceder a un proceso almacenado de SQL Server desde mi código C#?

Me basaré en la respuesta de Davide y el comentario de Ian porque ese fue exactamente el proceso por el que pasé.

Suposición :la respuesta se basa en VS2008 y VS2010 .

Para recorrer paso a paso un procedimiento almacenado T-SQL en SQL Server mientras se depura una aplicación .NET, debe hacer lo siguiente:

  1. Siga las instrucciones de soporte de MS "Cómo depurar procedimientos almacenados en Visual Studio .NET (Opción 2) "

    • Asegúrese de haber habilitado la depuración de SQL Server en las propiedades del proyecto (Paso 4 en las instrucciones vinculadas).
    • Asegúrese de haber establecido un punto de interrupción en el procedimiento almacenado mismo (Pasos 6-7)
  2. Habilite Permitir depuración de SQL/CLR en la conexión de datos en la que se llama al procedimiento almacenado:

    • (sin este segundo paso obtendrá "El punto de interrupción no se alcanzará actualmente. No se puede vincular SQL breakponit en este momento. El objeto que contiene el punto de interrupción no está cargado". según lo informado por Ian)
    • Explorador de servidores> Conexiones de datos
    • Hacer clic con el botón derecho en la conexión que está utilizando en el código
    • Marque Permitir depuración de SQL/CLR opción en el menú

Agregado de los comentarios:(Esto parece ser clave para que funcione)

También funciona con una conexión creada mediante programación. Solo tienes que usar la exactamente la misma cadena de conexión que se muestra cuando hace clic con el botón derecho en la instancia del servidor, hace clic en 'Propiedades' y se desplaza hacia abajo hasta 'Cadena de conexión' (Verbindungszeichenfolge en alemán).