2011-11-22 56 views
1

我有兩個數據源,並希望通過第一迭代,在其它數據源的場的存在濾波,如下面的僞代碼示出:如何查詢LINQ中另一組項目中的項目?

DataContext1 db1 = new DataContext1(); 
DataContext2 db2 = new DataContext2(); 

foreach(Address address in db1.Addresses.Where(l => l.LocationCode in db2.AddressList.Select(c => c.LocationCode))) 
{ 
    // perform operations 
} 

什麼將正確的語法是實現這個?

回答

0

後選擇添加AsEnumerable()在DB2

foreach(Address address in db1.Addresses.Where(l => 
    db2.AddressList.Select(c => c.LocationCode).AsEnumerable().Contains(l.LocationCode))) 
{ 
    // perform operations 
} 
+0

感謝,我想你的建議 - 編譯器抱怨說,它不能隱式轉換類型「字符串」到「布爾」在'l.LocationCode'。 ..還有其他一些錯誤。 – RoastBeast

+0

@RoastBeast更新了答案 – Magnus

+0

,這確實有效。謝謝! – RoastBeast

相關問題