none
asp.net c# RRS feed

  • Pregunta

  • Buenas me gustaria mucho que me pudiera ayudar con el código de un boton que me llene un gridview desde mi base de datos

      solo que el codigo no me funciona.                    

     protected void BtnBuscar_Click(object sender, EventArgs e)
            {

                string str = "select * from clientes where ( Nombre like '%' + @BUSCAR + '%')";
                MySqlCommand xp = new MySqlCommand(str, vid);
                xp.Parameters.Add("@BUSCAR", MySqlDbType.VarChar).Value = txtNombre.Text;



                vid.Open();
                xp.ExecuteNonQuery();
                MySqlDataAdapter da = new MySqlDataAdapter();
                da.SelectCommand = xp;
                MySqlDataReader ds = new MySqlDataReader();
                ds.Fill(ds, "Nombre");
                GridView1.DataSource = ds;
                GridView1.DataBind();
                vid.Close();



               //GridView1.DataSource = ClienteDal.Buscar(txtNombre.Text, txtApellido.Text);
            }  

    martes, 28 de marzo de 2017 2:35

Respuestas

  • Hola Mackdiel Dominguez,

    ¿Te muestra algún error ?

    Para obtener las coincidencias de una consulta solo bastaría con utilizar un MySqlDataAdapter y cargar el resultado en un DataTable para después asignarle a la propiedad DataSource del GridView.

    protected void BtnBuscar_Click(object sender, EventArgs e)
    {
        try
        {
            using (MySqlConnection con = new MySqlConnection("MiCadenaConexion"))
            {
                string query = "select * from clientes where Nombre like @buscar";
    
                MySqlDataAdapter adap = new MySqlDataAdapter(query, con);
    
                //Enviamos el parámetro
                adap.SelectCommand.Parameters.AddWithValue("@buscar", 
                                            string.Format("%{0}%", txtNombre.Text));
    
                DataTable dt = new DataTable();
    
                //Cargamos el DataTable con los resultados
                adap.Fill(dt);
    
                //Asignamos el DT al GridView
                GridView1.DataSource = dt;
                GridView1.DataBind();
            }
        }
        catch (Exception ex)
        {
            //Si se produce algún error mostramos un alert
            ScriptManager.RegisterClientScriptBlock(this, GetType(),
                "alert", string.Format("alert('{0}')", ex.Message), true);
        }
    }


    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    martes, 28 de marzo de 2017 3:07