Hola, no veo donde abris la conexión a la DB
conexion.Open()
El método ExecuteNonQuery requiere una conexión abierta
Podrias probar con algo así
Código:
SqlConnection cn = new SqlConnection(stringdeconexion);
cn.Open(); //try...catch
SqlCommand command = new SqlCommand("SQL", cn);
command.ExecuteNonQuery();
*Utilizar objeto reader para recuperar los datos (si es necesario)
cn.Close();
Bueno eso es lo que me acuerdo, saludos