none
dataview que busque en todos los campos de una tabla RRS feed

  • Pregunta

  • hola que tal, tengo un dataview en el que quiero hacer una búsqueda en "todos los campos" de la tabla. Entonces el rowfilter que tengo es este:

    DataView.RowFilter="campo like sierra"
    entonces ¿cómo hago para que me incluya todos los campos de la tabla en lugar de sólo "campo"?( Si es que se puede)

    gracias x vuestra ayuda.!!

    sl2. Wink
    lunes, 28 de mayo de 2007 22:25

Todas las respuestas

  • En realidad la sintaxis correcta, para buscar en un solo campo, seria

    Code Snippet

     

    DataView.RowFilter="campo like '%sierra%' "

     

     

    (nota las comillas simples delimitando la cadena, y los caracteres % para indicar "contenido en")

     

    Y podrias intentar si esto funciona, combinando varios campos (no estoy seguro si lo resuelve):

    Code Snippet

     

    DataView.RowFilter="campo1+campo2 like '%sierra%' "

     

    Saludos,

    Jose

    ----

    MCP, Tercer Planeta (Buenos Aires) http://www.buenaspracticas.net

       Colabora con el foro: Si la respuesta te es de utilidad marca la pregunta como respondida.

     

    martes, 29 de mayo de 2007 0:48
  • es válido, pero lo ideal sería algo que incluyese todos los campos. Supongo que no se puede hacer con '*' no?(como en un select)
    martes, 29 de mayo de 2007 21:00
  • Aquí lo tienes:

     

    Code Snippet

    private DataView Filtrar(DataView DataViewFiltrado)

    {

        string sRowFilter = String.Empty;

        bool bLike = false;

       

        foreach(DataColumn columna in _DataViewFiltrado.Table.Columns)

        {

            if (columna.DataType == System.Type.GetType("System.String"))

            {

                string RowFilterAux = columna.ColumnName + " LIKE '*" + this.T_texto_busqueda.Text + "*'";

                if (bLike)

                {

                    sRowFilter += "OR " + RowFilterAux;

                }

                else

                {

                    bLike = true;

                    sRowFilter += RowFilterAux;

                }

            }

        }

        _DataViewFiltrado.RowFilter = sRowFilter;

        return DataViewFiltrado;

    }

     

    Salu2

     

    Colabora con el foro: Si la respuesta te es de utilidad marca la pregunta como respondida.

    Luis Ruiz Pavón

    MCP

    Blog: http://geeks.ms/blogs/lruiz

    miércoles, 30 de mayo de 2007 7:18