если вы делаете это как Linq2SQL, похоже, вы делаете это правильно, чтобы обеспечить правильные прогнозы для SQL Server. Вы можете попробовать написать это немного по-другому, например:
var result = from p in People
where ages.Select(a => a).Contains(p.Age)
select p;
Вы говорите, что это ничего не возвращает. Вы уверены, что есть соответствующие записи для возврата? Кроме того, вы используете result
где-нибудь? Запрос не будет выполнен, если вы не привязали его к чему-либо или не вызвали ToList()
к какому-либо другому взаимодействию проектирования.
Образец из комментариев:
var ints = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var Merchandiser = (new DataClasses1DataContext()).Merchandisers;
var result = from m in Merchandiser
where ints.Contains(m.Id)
select m;
foreach (var item in result)
{
Console.WriteLine(item.Name);
}
Console.ReadLine();