2010-04-26 8 views
0

Quelle est la meilleure façon de gérer le scénario de recherche de base de données suivant en utilisant asp.net mvc, sql server et linq to sql? J'ai une simple recherche de personnes, par leur prénom et leur nom de famille. Basé sur les résultats, je voudrais filtrer dynamiquement la base de résultats sur la ville et les affaires des personnes. Cela pourrait être plusieurs villes ou les entreprisesrecherche avec liste de valeurs séparées par des virgules en utilisant linq to sql

Voici un code de psudeo de ce que je dois faire (Denver, New York, etc. et affaires A, ect d'affaires B.):

_db.People.where(p => p.City.Contains(Denver, New York, multiple parameters) 
&& p.Business.contains(Denver, New York, multiple parameters); 

Je passe ces valeurs en arrière, séparées par des virgules à rechercher. Courant Je parcourt chaque valeur pour rechercher la base de données et utiliser la fonction linq to sql .addrange pour construire mes listes mises à jour. Je ne suis pas sûr que ce soit la meilleure façon de le faire. Est-il possible de transmettre une liste complète de valeurs séparées par des virgules à comparer? Je suis ouvert à toutes les options, recherche plein texte ou procédure stockée, je ne suis pas sûr de savoir par où commencer.

Répondre

3
var cities = commaSeparatedList.Split(',').Select(p => p.Trim()); 
var q = _db.People.Where(c => cities.Contains(c.City)); 
+0

Merci beaucoup, c'est exactement ce que je cherchais. – Victor

Questions connexes