Query ya tiene respuesta?

dapper sql-server stored-procedures tsql

Pregunta

Mi procedimiento almacenado tiene un parámetro de salida para el recuento de filas. Cuando se llama al procedimiento almacenado usando Dapper ...

var p = new DynamicParameters();
p.Add("@rowCount", dbType: DbType.Int32, direction: ParameterDirection.Output);

var reader = conn.ExecuteReader("SearchStuff", p, commandType: CommandType.StoredProcedure);

el perfilador muestra lo siguiente ...

declare @p0 int
set @p0=115
exec SearchStuff @rowCount=@p0 output
select @p0

Estoy desconcertado ... ¿cómo se asigna el recuento de filas al parámetro out antes de que se haya ejecutado el procedimiento almacenado?

Respuesta aceptada

El texto que ve en el seguimiento es una versión de ingeniería inversa del evento completado RPC, no lo que realmente se ejecutó. Esto parece ser un problema con la forma en que SQL Trace / Profiler muestra el formato legible para humanos.

SQL Server es rápido pero aún no tiene tiempo de deformación :-)



Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué