нужен простой linq

#linq

#linq

Вопрос:

У меня есть таблица под названием products. Я хочу получить все продукты, у которых есть ProductID 2 ИЛИ 6 ИЛИ 9 SQL: Select * from products where productID=2 OR productID=6 OR ProductID=9 . Как я могу выполнить этот sql с помощью LINQ? Идентификаторы продуктов находятся в массиве

Ответ №1:

 from p in Products
where new int [] { 2,6,9 }.Contains(p.ProductID)
select p;
  

Ответ №2:

 var q = from p in Products
        where p.productID==2 || p.productID==6 || p.productID==9
        select p;

foreach(var product in q)
{
  //...
}
  

или просто:

 db.Products.Where(p=> p.productID==2 || p.productID==6 || p.productID==9)
  

Комментарии:

1. Как я могу реализовать ваше решение с помощью foreach? Идентификаторы продуктов находятся в массиве.

2. Я добавил инструкцию foreach