Principales respuestas
SqlDataSource: Cambio de la propiedad Selectquery

Pregunta
-
Hola chic@s de nuevo! Tengo otro problemilla que no se cual es la forma más óptima de solucionarlo. Os cuento...
Tengo un SqlDataSource configurado para hacer selects. Quiero cambiar la propiedad SelectQuery del SqlDataSource por código. ¿Se puede?
El motivo es que tengo una página web que sirve para buscar información en la base de datos. El usuario puede rellenar 2 campos, 5 campos o los campos que quiera. Entonces una vez que el usuario rellene los campos que quiera y le de al boton de buscar. Voy a hacer una cadena string para buscar en base de datos. ¿Hay posibilidad de incluirsela al SqlDataSource y que así lo haga él? De esta froma utilizaré el datagridview para mostrar el resultado.
¿Creeis que es la mejor forma de hacerlo?
Muchas gracias!!! :)
Respuestas
-
hola,
te aconsejo que no crees el query dimamicamente en runtime, sino que puedes crearlod e forma estatica pero pasandole parametros:
Utilizar parámetros con el control SqlDataSource
por supuesto usaras la propiedad:SqlDataSource. SelectParameters
ParameterCollection
si quieres que un valor sea de seleccion opcional tambien peudes hacer algo como esto:
SELECT * FROM Employees
WHERE ((@LastName IS NULL) OR (LastName = @LastName))
AND ((@FirstName IS NULL) OR (FirstName = @FirstName))
como veras si le pasas un valor de null a los parametros devolvera todos ya que aplica en true la priemr parte.
saludos
Leandro Tuttini
Work: Iceberg Solutions
Blog
Buenos Aires
Argentina- Propuesto como respuesta Leandro TuttiniMVP jueves, 28 de mayo de 2009 18:56
- Marcado como respuesta Marc RubiñoModerator martes, 20 de abril de 2010 14:40
Todas las respuestas
-
hola,
te aconsejo que no crees el query dimamicamente en runtime, sino que puedes crearlod e forma estatica pero pasandole parametros:
Utilizar parámetros con el control SqlDataSource
por supuesto usaras la propiedad:SqlDataSource. SelectParameters
ParameterCollection
si quieres que un valor sea de seleccion opcional tambien peudes hacer algo como esto:
SELECT * FROM Employees
WHERE ((@LastName IS NULL) OR (LastName = @LastName))
AND ((@FirstName IS NULL) OR (FirstName = @FirstName))
como veras si le pasas un valor de null a los parametros devolvera todos ya que aplica en true la priemr parte.
saludos
Leandro Tuttini
Work: Iceberg Solutions
Blog
Buenos Aires
Argentina- Propuesto como respuesta Leandro TuttiniMVP jueves, 28 de mayo de 2009 18:56
- Marcado como respuesta Marc RubiñoModerator martes, 20 de abril de 2010 14:40
-