Filtrar registros de un dataset????

15/01/2007 - 21:37 por manuel | Informe spam
Holas

Me gustaria saber si es posible establecer filtros a un dataset ya cargado
en una aplicacion vb.net.

En mi aplicación cargo un dataset por medio de una conexion sql y quisiera
filtrar algunos registros sobre el dataset ya cargado para no estar haciendo
la consulta nuevamente a la base de datos (tengo entendido que esta forma es
mas rapida por ser desconectada)

Gracias

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
19/01/2007 - 08:24 | Informe spam
"manuel" wrote in message
news:
Me gustaria saber si es posible establecer filtros a un dataset ya cargado
en una aplicacion vb.net.

En mi aplicación cargo un dataset por medio de una conexion sql y quisiera
filtrar algunos registros sobre el dataset ya cargado para no estar
haciendo la consulta nuevamente a la base de datos (tengo entendido que
esta forma es mas rapida por ser desconectada)



Para eso está el DataView, que se interpone entre una tabla de tu dataset
y el consumidor de esos datos (por ejemplo, un datagrid) y permite
establecer filtros y también cambiar la ordenación. Por ejemplo, supongamos
que estás visualizando los datos de tu dataset en un datagrid con un código
como este:

Dim ds as DataSet
'(Se carga el DataSet con un Fill)
Dim dt as DataTable = ds.Tables(0)
DataGrid1.DataSource = dt

Bien, pues para ponerle filtros lo cambias asi:

Dim ds as DataSet
'(Se carga el DataSet con un Fill)
Dim dt as DataTable = ds.Tables(0)
Dim dv as DataView = dt.DefaultView
DataGrid1.DataSource = dv

Como ves, el único cambio es que ahora en lugar de conectar directamente
el DataTable con el DataGrid, hemos interpuesto entre medias un DataView.
Ahora, para filtrar los registros, no hace falta más que cambiar la
propiedad Filter del DataView:

dv.Filter = "Campo1>'valor' AND Campo2<=otroValor"

La sintaxis del string que se le pasa al Filter es similar a la que
usarías tras el WHERE de SQL si fueras a enviar la consulta a un servidor,
pero el DataView no la envía a ningún sitio sino que la procesa en memoria.
También existe un dv.Sort que te permite mostrar los registros en otro
orden.
Respuesta Responder a este mensaje
#2 manuel
22/01/2007 - 06:01 | Informe spam
excelente

Muchas gracias amigo!!!!


"Alberto Poblacion"
escribió en el mensaje news:
"manuel" wrote in message
news:
Me gustaria saber si es posible establecer filtros a un dataset ya
cargado en una aplicacion vb.net.

En mi aplicación cargo un dataset por medio de una conexion sql y
quisiera filtrar algunos registros sobre el dataset ya cargado para no
estar haciendo la consulta nuevamente a la base de datos (tengo entendido
que esta forma es mas rapida por ser desconectada)



Para eso está el DataView, que se interpone entre una tabla de tu
dataset y el consumidor de esos datos (por ejemplo, un datagrid) y permite
establecer filtros y también cambiar la ordenación. Por ejemplo,
supongamos que estás visualizando los datos de tu dataset en un datagrid
con un código como este:

Dim ds as DataSet
'(Se carga el DataSet con un Fill)
Dim dt as DataTable = ds.Tables(0)
DataGrid1.DataSource = dt

Bien, pues para ponerle filtros lo cambias asi:

Dim ds as DataSet
'(Se carga el DataSet con un Fill)
Dim dt as DataTable = ds.Tables(0)
Dim dv as DataView = dt.DefaultView
DataGrid1.DataSource = dv

Como ves, el único cambio es que ahora en lugar de conectar
directamente el DataTable con el DataGrid, hemos interpuesto entre medias
un DataView. Ahora, para filtrar los registros, no hace falta más que
cambiar la propiedad Filter del DataView:

dv.Filter = "Campo1>'valor' AND Campo2<=otroValor"

La sintaxis del string que se le pasa al Filter es similar a la que
usarías tras el WHERE de SQL si fueras a enviar la consulta a un servidor,
pero el DataView no la envía a ningún sitio sino que la procesa en
memoria. También existe un dv.Sort que te permite mostrar los registros en
otro orden.




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida