Utilizaremos la base de datos PUBS y la tabla Authors.
En el ejemplo cargaremos un GridView con una query a la tabla Authors:
SELECT * FROM Authors
Esta consulta nos devuelve todos los autores de la tabla nosotros en el Gridview solo mostraremos los de un determinado estado, aplicando el siguiente filtro:state='CA'
En este filtro aplicado el DataSet viene a ser lo mismo que Filtrar en el query de la siguiente forma:SELECT * FROM Authors Where state='CA'
CodigoCreamos un dataset donde devolvemos el resultado de la query:
DataSet ds = new DataSet();
Realizamos la consulta.SqlConnection conn = new SqlConnection("Server=localhost;Database=PUBS;Uid=sa;Pwd=as");
SqlCommand cmd = new SqlCommand("SELECT * FROM Authors", conn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
Creamos un DataView para aplicar el filtro y utilizamos la propiedad RowFilter del DataView para filtrar los datos.
DataView dv = ds.Tables[0].DefaultView;
dv.RowFilter = "state='CA'";
GridView1.DataSource = dv; GridView1.DataBind();
Enlaces relacionadas:
Código de ejemplo
Saludos!!
Alex.
Añadir un comentarios:
Juan Diego 07/03/2020 07:46:35Muchas Gracias por la información, me funciona muy bien cuando lo voy a utilizar en un dataGridView, pero sin embargo quiero utilizarlo en un informe, obtener unos datos filtrado para el informe, por ejemplo filtrar todos los productos por marca y categoría, pero sino selecciono ninguna marca, entonces no debe filtrarme por marca... y lo mismo mismo por categoría, y sino selecciono ninguno de los dos, pues me envía todos los datos... |