none
Insertar en bd por medio de un formulario personalizado RRS feed

  • Pregunta

  • Buenas, tengo el siguiente inconveniente al llamar al evento onclick


    Use un ejemplo de código, trabajando con un sitio web, lo ejecute y me devolvió un error según entendí.
    System.ArgumentException was unhandled by user code
      Message=El formato de la cadena de inicialización no se ajusta a la especificación que comienza en el índice 0



    Este es el evento que estoy utilizando
    <script runat="server">

        protected void Bguardcurso_Click(object sender, EventArgs e)
        {
            using (SqlConnection cn = new SqlConnection("ConnectionStrings:ESTADOCURSOConnectionString"))
            {
                cn.Open();

                string query = "INSERT INTO Cursos (Nombre, Estado_curso, Modo_curso, Horas_catedra_curso, Fecha_ini_curso, Fecha_Ingreso, Objeto_curso, Localidad_curso, Dpto_local_curso, Sede_local_curso, Sede_otros_curso, Sala_curso, Otros_sala_curso, Tipo de Plantel, Fecha_fin_curso, Horario_ini_curso, Horario_fin_curso, Responsable, Dirigido_curso, Cupo_alumno) VALUES (@TBnomievento, @DDLestado, @DDLtipoevento, @TBtotalhoras, @TBfechaini, @TBojetocurso, @DDLlocalidad, @DDLdepa, @DDLsede, @DDLotrasede, @Sala_curso, @DDLotrasala, @DDLplantel, @TBfechafin, @TBhoraini, @TBhorafin, @DDLdirigidoa, @TBcupo, @DDLresponsa";
                SqlCommand cmd = new SqlCommand(query, cn);

                cmd.Parameters.AddWithValue("@nombre", TBnomievento.Text);
                cmd.Parameters.AddWithValue("@Estado_curso", DDLestado.Text);
                cmd.Parameters.AddWithValue("@Modo_curso", DDLtipoevento.Text);
                cmd.Parameters.AddWithValue("@Responsable", DDLresponsa.Text);
                cmd.Parameters.AddWithValue("@Horas_catedra_curso", TBtotalhoras.Text);
                cmd.Parameters.AddWithValue("@Fecha_ini_curso", TBfechaini.Text);
                cmd.Parameters.AddWithValue("@Objeto_curso", TBojetocurso.Text);
                cmd.Parameters.AddWithValue("@Localidad_curso", DDLlocalidad.Text);
                cmd.Parameters.AddWithValue("@Dpto_local_curso", DDLdepa.Text);
                cmd.Parameters.AddWithValue("@Sede_local_curso", DDLsede.Text);
                cmd.Parameters.AddWithValue("@Sede_otros_curso", DDLotrasede.Text);
                cmd.Parameters.AddWithValue("@Sala_curso", DDLsalaasig.Text);
                cmd.Parameters.AddWithValue("@Otros_sala_curso", DDLotrasala.Text);
                cmd.Parameters.AddWithValue("@Tipo_de_Plantel", DDLplantel.Text);
                cmd.Parameters.AddWithValue("@Fecha_fin_curso", TBfechafin.Text);
                cmd.Parameters.AddWithValue("@Horario_ini_curso", TBhoraini.Text);
                cmd.Parameters.AddWithValue("@Horario_fin_curso", TBhorafin.Text);
                cmd.Parameters.AddWithValue("@Dirigido_curso", DDLdirigidoa.Text);
                cmd.Parameters.AddWithValue("@Cupo_alumno", TBcupo.Text);

                cmd.ExecuteNonQuery();
            }

        }
    </script>


    Podrian ayudarme? saludos

    viernes, 16 de noviembre de 2012 17:11

Todas las respuestas

  • Es un problema en la cadena de conexión. Estás tratando de usar el formato del ExpressionBuilder, que solo vale para el código ASPX, pero no para embeberlo en el C# de un script. Tendrás que usar algo parecido a esto:

     using (SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ESTADOCURSOConnectionString"].ConnectionString)

    (escrito de memoria, puede que no sea completamente exacto)

    No olvides añadir System.Configuration.dll en las referencias del proyecto.

    viernes, 16 de noviembre de 2012 21:14
  • Como estas Alberto? muchas gracias por la ayuda, una vez hecho esto mi evento respondio correctamente.

    domingo, 18 de noviembre de 2012 19:31