Principales respuestas
Consulta Sql en SqlDataSource Dinamica

Pregunta
-
Respuestas
-
Ah, si solo quieres filtrar los datos, una opción sencilla es cambiar el valor del FilterExpression. Incluso, el FilterExpression puede estar parametrizado, y el parámetro puedes tomarlo directamente de otro control que haya en la pantalla. Tienes un ejemplo aquí:
O bien, si quieres filtrar directamente con el Where, deja el Where escrito en la sentencia SQL y ponle parámetros. Y después los parámetros los configuras con el <SelectParameter> dentro del SqlDataSource. Ejemplo aquí:
- Propuesto como respuesta Sergio ParraModerator lunes, 22 de agosto de 2016 16:24
- Marcado como respuesta Laura CeglzModerator jueves, 25 de agosto de 2016 14:29
Todas las respuestas
-
Si te estás planteando cambiar la consulta en tiempo de ejecución, probablemente significa que no deberías estar usando un SqlDataSource.
Si lo que necesitas es solamente añadir condiciones en el Where de la consulta, entonces sí, se puede hacer cambiando los filtros del SqlDataSource. Pero si quieres cambiar la consulta por completo, por ejemplo, seleccionando campos distintos de una tabla distinta, entonces el SqlDataSource es una mala elección porque normalmente la razón de usarlo es para aplicar databinding, pero el databinding se hace en tiempo de diseño con los campos de la consulta inicial, por lo que al cambiarla en tiempo de ejecución se "rompen" todos los vínculos. Así que si necesitas esta funcionalidad, es mejor que uses un SqlConnection con un SqlDataAdapter en el code-behind, en lugar de un SqlDataSource en el .aspx, y que apliques el databinding programáticamente en lugar de hacerlo desde el diseñador.
-
-
Ah, si solo quieres filtrar los datos, una opción sencilla es cambiar el valor del FilterExpression. Incluso, el FilterExpression puede estar parametrizado, y el parámetro puedes tomarlo directamente de otro control que haya en la pantalla. Tienes un ejemplo aquí:
O bien, si quieres filtrar directamente con el Where, deja el Where escrito en la sentencia SQL y ponle parámetros. Y después los parámetros los configuras con el <SelectParameter> dentro del SqlDataSource. Ejemplo aquí:
- Propuesto como respuesta Sergio ParraModerator lunes, 22 de agosto de 2016 16:24
- Marcado como respuesta Laura CeglzModerator jueves, 25 de agosto de 2016 14:29