2010-08-16 26 views

cevap

59

Kullanım Contains:

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

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

veya sorgu sözdiziminde:

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

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

Çok teşekkürler ... –

+0

@ Jon Skeet teşekkürler. Ama sorum var. Bunu çözebileceğine inanıyorum. Diğer bir deyişle, kimlikler başka bir tablo şemasından getiriliyor ve milyonlarca veri içeriyorsa bunu daha hızlı yapamıyorum. Karşılaştırma için daha yavaş. Benim düşüncem mi yoksa derleyici, dahili endeksleme/bazı diğer karmaşık algoritmaları yöneterek en iyi optimize çalışma zamanını veriyor mu? Lütfen cevap verin, şimdi buna ihtiyacım var. –

+2

@MuhammadAshikuzzaman: Bu durumda bunun yerine bir birleştirme ile yapmalısınız. –

2

Cevabın bu doğrultuda bir yerde yatıyor düşünüyorum ...

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

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

ve tabii ki Jon Skeet en iyi cevabı verir. Ve o da İLK! Gerçekten nasıl yaptığını merak ediyorum. :-) –