Tengo un problema al utilizar SqlDataReader para obtener los datos de las Variables OUTPUT, ya he intentado todo pero no consigo que me devuelva un valor, a menos que le haga un SELECT a las variables en el PROCEDIMIENTO ALMACENADO, pero lo que quiero evitar es el uso del SELECT, bueno pongo mi codigo:
Código vb:
Ver originalDim dr As SqlDataReader
Dim arParms() As SqlParameter = New SqlParameter(1) {}
arParms(0) = New SqlParameter("@ClaveRastreo", SqlDbType.VarChar, 50)
arParms(0).Direction = ParameterDirection.Output
'--
arParms(1) = New SqlParameter("@NumAsiento", SqlDbType.Int)
arParms(1).Direction = ParameterDirection.Output
dr = ConsultaProcedimiento(trs, "sp_Envio_Orden", cons, arParms)
If dr.HasRows Then
Do While dr.Read()
Return dr.GetValue(0)
Loop
Else
Return "No se han devuelto parametros"
End If
Dentro de esta funcion ConsultaProcedimiento hago todo el proceso y me devuelve un SqlDataReader, funciona perfecto y me regresa valores cuando utilizo en el PROCEDIMIENTO ALMACENADO SELECT a tablas, pero lo que me interesa ahorita es la rescuperación de los parametros tipo OUTPUT, siempre entra en el else y me retorna:
Return "No se han devuelto parametros"
Espero me puedan ayudar gracias....