Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/08/2008, 09:49
Avatar de mvazquez
mvazquez
 
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 6 meses
Puntos: 8
Pregunta SqlParameter[]

Hola Amigos, soy de recién ingreso a este foro, tengo una necesidad que quiero plantear……… incluyo el código y luego explico….


--"Este es mi procedimiento para ejecutar un SP que lleva uno o N parámetros"--

public object EjecutarInstruccion(string TipoEjecucion, string NombreProcedimientoAlmacenado, SqlParameter[] Parametros)
{
SqlCommand sqlCmd;
object oResultado = null;

sqlCmd = new SqlCommand();

try
{
if ((mSqlCnn != null) && mSqlCnn.State != ConnectionState.Open)
{
mSqlCnn.Open();
}

sqlCmd.CommandText = NombreProcedimientoAlmacenado;
sqlCmd.Connection = mSqlCnn;
sqlCmd.CommandType = CommandType.StoredProcedure;
sqlCmd.Parameters.AddRange(Parametros);
if ((mSqlTran != null))
{
sqlCmd.Transaction = mSqlTran;
}

switch (TipoEjecucion)
{
case "NonQuery":
oResultado = sqlCmd.ExecuteNonQuery();
break;
case "Scalar":
oResultado = sqlCmd.ExecuteScalar();
break;
}
return oResultado;
}

catch (Exception ex)
{
throw new Exception(ex);
}
}

--"Luego desde mi Forma lo mando ejecutar de la siguiente manera"--

SqlParameter sqlPrm0 = new SqlParameter("@idMenu", "A");
SqlParameter sqlPrm1 = new SqlParameter("@idPadre", 2);
SqlParameter sqlPrm2 = new SqlParameter("@Descripcion", 3);

EjecutarInstruccion(NonQuery, "spNombreStored", sqlPrm1, sqlPrm2, sqlPrm3);

--"Pero me da el siguiente error"--
--"No overload for method 'EjecutarInstruccion' takes '5' arguments."--

--"Y es que yo me imagino que es por que no le estoy mandando de la manera"-- --"correcta la colección de sqlParameter[]"--

--“Alguien tiene alguna idea que me pueda ayudar?”--

--“De antemano muchas gracias.”--
--"[email protected]"--

--"PD Esta metodología me ha funcionado perfectamente bien en WebForm pero ahora en WinForm no se deja..!! "--