Как вы запрашиваете элементы, которые находятся в другом наборе элементов в LINQ? - PullRequest
1 голос
/ 22 ноября 2011

У меня есть два источника данных, и я хочу перебрать первый, фильтруя существование поля в другом источнике данных, как показано в псевдокоде ниже:

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
}

Каким будет правильный синтаксис для достижения этой цели?

1 Ответ

0 голосов
/ 22 ноября 2011

Добавить AsEnumerable() после выбора в db2

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