data access application blocks

31/08/2004 - 22:11 por Anonimo | Informe spam
actualmente creo un sqlparameter en un array de
sqlparameters para pasarlo como argumento al executescalar
y los demas métodos

existe una posibilidad de no pasar sqlparameters y mandar
solo los strings???

o sea, lo que yo quiero es pasar

dim x(1) as string
x(0)="Hola"
x(1)="Hola"

es posible???? me da error a mi
 

Leer las respuestas

#1 Jose Marcenaro
31/08/2004 - 22:34 | Informe spam
Depende de cual de las sobrecargas del método utilices.

En algunas de las sobrecargas, cuando lo que invocas es un procedimiento
almacenado, el application block puede "darse cuenta" del tipo y número de
los parámetros (en realidad la primera vez realiza una consulta al servidor,
y luego mantiene esa información en un cache interno). En esos casos, una de
las opciones es pasar directamente una lista (ParamArray) de objetos.

Eso se haría asi:
SqlHelper.ExecuteNonQuery(ConnStr, "miStoredProcedure", "Hola1",
"Hola2")

Pero si lo que invocas no es un procedimiento almacenado, sino que es un
comando de texto, debes construir los sqlparameters para que pueda
identificar el tipo de datos, nombre del parametro, etc.

Nota: en éste último caso, puedes crear los parámetros en forma abreviada
asi:
SqlHelper.ExecuteNonQuery(ConnStr, CommandType.Text, "insert ...", _
New SqlParameter("@miPar1", "Hola1"), _
New SqlParameter("@miPar2", "Hola2"))

Saludos
Jose Marcenaro

escribió en el mensaje
news:3b0c01c48f96$ab6b7870$
actualmente creo un sqlparameter en un array de
sqlparameters para pasarlo como argumento al executescalar
y los demas métodos

existe una posibilidad de no pasar sqlparameters y mandar
solo los strings???

o sea, lo que yo quiero es pasar

dim x(1) as string
x(0)="Hola"
x(1)="Hola"

es posible???? me da error a mi

Preguntas similares