¿Es posible capturar la salida de impresión de un procedimiento almacenado de T-SQL en .NET?
Tengo muchos procesos heredados que usan la impresión como medio de mensajería de error. Un ejemplo, ¿es posible acceder a la 'palabra' impresa desde el siguiente PROC?
-- The PROC
CREATE PROC usp_PrintWord AS
PRINT 'word'
// Some C# Code to would like to pull out 'word'
SqlCommand cmd = new SqlCommand("usp_printWord", TheConnection);
cmd.CommandType = CommandType.StoredProcedure;
// string ProcPrint = ???
c#
.net
stored-procedures
Pedro
fuente
fuente
Respuestas:
Puede hacer esto agregando un controlador de eventos al evento InfoMessage en la conexión.
fuente
Esto es realmente útil si desea capturar la salida de impresión en la consola de salida de LinqPad:
fuente
Para convertir la salida en una variable:
fuente