[LINQ] - créer une requete dynamique (pas en dur)

romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 - 7 juin 2007 à 21:14
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 - 7 juin 2007 à 23:22
Bonjour,
une question a propos de Linq

voila
j'ai essayé de me faire une petite application avec
- une textbox
- un bouton
- un datagridview

le but etant simple je saisi une requete Linq dans la textbox
ex :
<!-- BEGIN TEMPLATE: bbcode_code -->

from c in contacts
select c

<!-- END TEMPLATE: bbcode_code -->(contacts pourrait etre une liste generique de contact par exemple

et lorsque je clique sur le bouton

j'execute et affiche le resultat de la requete (dans l'idée) dans un datagridview par exemple avec un
<!-- BEGIN TEMPLATE: bbcode_code -->

datagridview1.DataSource = Query.ToList();

par exemple ou une boucle enfin peu importe ce n'est pas cela le pb

c'est que je fais un

var Query = textbox1.text ; // la textbox contiendrait donc une requete

<!-- END TEMPLATE: bbcode_code -->

et que forcément automatiquement le type de var est déduit en string alors que moi ce que je désire c'est y stocké une requête en vu de l'executer avec un ToList() par exemple

j'ai essayé avec un IQueryable mais sans trop de succès

c'est important il me semble car si on ne peut pas définir "dynamiquement" ses requetes cela signifie qu'il faut toutes les codées "en dur", et la on (enfin je) se dit que Linq est bien moins souple que l'on veut bien le croire

une solution ?

mercii
++

2 réponses

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
7 juin 2007 à 21:52
Bonsoir,
Regarde du côté de l'interface IQueryable<T> et sa méthode CreateQuery(...).
A partir de la google t'aidera mieux :)

++
0
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
7 juin 2007 à 23:22
lol oui c'est ce que j'avais essayé je vais chercher un peu plus merci  Willi ++
0