linq. Consultas configurables

27/05/2010 - 23:17 por Diego P. | Informe spam
Buenos días.
Tengo un control que genera una lista de consulta (en VB6), en función de
determinados parametros (campos, tablas, ...)
Me gustaría pasar dicho control a c#

El problema que tengo es que en función de los parámetros genero
automáticamente las sentencias SQL, es decir, unas veces puedo tener:
SELECT campo1, campo2 FROM tabla1, otras
SELECT campo1, campo3 FROM tabla1 LEF JOIN otraTabla ON..., más o menos
sentencias relativamente sencillas.

He pensado en crear un dataset, con la generación automática de sentencias
SQL, y luego utilizar linq a dataset.
Este sería el camino?. No es posible utilizar directamente linq a SQL, con
generaciones "dinámicas" de campos, tablas o condiciones.

Si no me he expresado bien, preguntarme lo que querais

Muchas gracias a todos.
 

Leer las respuestas

#1 Alberto Poblacion
28/05/2010 - 08:39 | Informe spam
"Diego P." wrote in message
news:
[...]
El problema que tengo es que en función de los parámetros genero
automáticamente las sentencias SQL, es decir, unas veces puedo tener:
SELECT campo1, campo2 FROM tabla1, otras
SELECT campo1, campo3 FROM tabla1 LEF JOIN otraTabla ON..., más o menos
sentencias relativamente sencillas.

He pensado en crear un dataset, con la generación automática de sentencias
SQL, y luego utilizar linq a dataset.
Este sería el camino?. No es posible utilizar directamente linq a SQL, con
generaciones "dinámicas" de campos, tablas o condiciones.



Efectivamente, LINQ no es adecuado para este tipo de tratamientos. La
idea del LINQ-to-Sql es que se sabe exactamente cuál es la consulta que
deseas, y el compilador es capaz de verificarla gracias a las definiciones
de las clases generadas automáticamente (a diferencia de las consultas
dinámicas, que se validan en tiempo de ejecución en lugar de en tiempo de
compilación).
Si tu consulta va a ser dinámica de todas formas, es preferible que
sigas usando SQL dinámico, en lugar de tratar de convertirla en LINQ. Aunque
se puede conseguir a base de árboles de expresiones, en general no merece la
pena.

Preguntas similares