La Red de Conocimientos Pedagógicos - Conocimientos históricos - Por qué ExecuteScalar requiere una conexión abierta y disponible. El estado actual de la conexión está cerrado. Por favor responda. Gracias.

Por qué ExecuteScalar requiere una conexión abierta y disponible. El estado actual de la conexión está cerrado. Por favor responda. Gracias.

1. SqlConnection con = new SqlConnection(strConn);

----->Es mejor agregar con.open() para abrir la conexión de la base de datos

SqlCommand cmd = new SqlCommand( "SELECCIONE GoodsID DE KCB DONDE GoodsID='" + this.txtGoodsID.Text.Trim() + "'", con);

if (cmd.ExecuteScalar() != null)

2. Prueba también aquí

{

con.Open();

cmd.ExecuteNonQuery();

cmd1.ExecuteNonQuery();

con.Close();---> no debe colocarse aquí para cerrar, sino que debe escribirse finalmente

}

catch (Exception ex )

{

MessageBox.Show(ex.ToString());

}

finalmente

{

MostrarInfo();

}