2009-10-08 7 views
2

Je vais construire une fonction de recherche aujourd'hui, C# asp.net. J'ai besoin d'une poussée aller le faire rouler. J'utilise nhibernate linq. ce serait sympa de le faire avec linq query. il faut que ce soit un peu dynamique, je vais avoir plusieurs critères de recherche comme le genre, l'email, le nom, l'âge et un peu plus.Comment créer une fonction de recherche avec nhibernate, linq?

Cette requête de recherche va uniquement à mon objet client.

comment pourrais-je faire cela? et comment est-ce fait de la bonne façon? La façon dont je pense maintenant est que je reçois un iqueryable et effectuer des requêtes à cela. Je pense comme ceci que par exemple pour le genre j'ai eu deux cases à cocher, ainsi j'effectue un si le mâle vérifie je fais un where.gender == "Male" et si aucun n'est vérifié je fais le nuthing. mais est-ce le moyen de le faire pour chaque requête? parce que certains sont l'entrée de l'utilisateur pour aimer le nom, l'email, l'âge.

s'il vous plaît me conseiller sur ce

Répondre

2

Vous pouvez analyser votre filtre de recherche comme celui-ci:

var query==... 
if (filter.Name.Length>0) 
    query=query.Where(name=...) 
if (filter.Email.Length>0) 
    query=query.Where(email=...) 
+0

grand. pendant que je suis là, si je veux effectuer une recherche pour la page entière comme dans les nouvelles, les images ect .. comment pourrais-je faire cela? –

+0

Vous voulez dire dans une requête? Je pense (sauf si c'est un goulot d'étranglement) que vous pouvez utiliser plusieurs requêtes. –

Questions connexes