2010-08-16 4 views

Répondre

59

Utilisation Contains:

int[] ids = { 1, 2, 3, 4, 5}; 

var query = db.myTable.Where(item => ids.Contains(item.ID)); 

ou dans la syntaxe de requête:

int[] ids = { 1, 2, 3, 4, 5}; 

var query = from item in db.myTable 
      where ids.Contains(item.ID) 
      select item; 
+0

Merci beaucoup ... –

+0

@ Jon Skeet merci. Mais j'ai une question. Je crois que vous pouvez résoudre cela. C'est à ce moment que les ids sont en train d'aller chercher à partir d'un autre schéma de table et contiennent des millions de données alors je ne peux pas le faire plus rapidement. Il est plus lent pour la comparaison. Est-ce ma pensée ou le compilateur donne le meilleur temps d'exécution optimal en gérant l'indexation interne/un autre algorithme complexe? S'il vous plaît réponse, j'en ai besoin maintenant. –

+2

@MuhammadAshikuzzaman: Dans ce cas, vous devriez le faire avec une jointure à la place. –

2

Je pense que la réponse se trouve quelque part le long de ces lignes ...

Array a = {1,2,3,4,5} 

...WHERE a.Contains(ID) 
+2

et bien sûr, Jon Skeet donne la meilleure réponse. Et il est PREMIER! Je me demande comment il le fait, vraiment. :-) –