2010-05-21 4 views
0

J'ai un tableau ... et je dois exclure tous les éléments de ce tableau de chaînes du masterList.customField comme indiqué ci-dessousrequête LINQ pour filtrer DTO

string[] excludeItem = {"a","b","c"}; 

CustomDTO[] masterList = service.LoadMasterList(); 

masterList.Where(c=> masterList.customField NOT IN excludeItem 

Comment puis-je obtenir le PAS dans la partie ci-dessus ?

+0

en utilisant la solution proposée, vous devriez penser à garder votre excludedItem dans un HashSet plutôt qu'un tableau. pour un nombre faible, le tableau peut être plus rapide mais dans le cas moyen, HashSet.Contains sera plus rapide que Array.Contains –

Répondre

3

En supposant CustomField est une chaîne:

masterList.Where(c => !excludeItem.Contains(c.customField)); 
0

Ou, comme une requête LINQ:

var x = from c in masterList 
     where !excludedItem.Contains(c.CustomField) 
     select c; 
Questions connexes